首页 > 编程语言 > 详细

脱离xml使用JavaConfig实现Spring配置

时间:2020-09-01 22:31:57      阅读:461      评论:0      收藏:0      [点我收藏+]

总结

情况一:

配置类中类名添加 @Configuration 注解,同时提供一个方法返回一个Bean实例,且这个方法添加注解 @Bean ,就可以由Spring管理此对象
如下所示:

User.java( Bean )

public class User {


    private String name;

    public String getName() {
        return name;
    }

    @Value("Juyss") //注入name属性的值
    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "User{" +
                "name=‘" + name + ‘\‘‘ +
                ‘}‘;
    }
}

SpringConfig.java( Java配置类 )

@Configuration //表明此类为Spring配置类
public class SpringConfig {

    @Bean //返回一个实例,注册为一个Bean由Spring管理
    public User getUser(){
        return new User();
    }

}

ConfTest.java(测试类)

public class ConfTest {

    @Test
    public void Test(){
        ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
        User user = context.getBean("getUser", User.class); //第一个参数需与方法名一致
        System.out.println(user);
    }
}

测试类运行结果得到:User{name=‘Juyss‘}

情况二:

配置类中类名上添加注解@Configuration表明为Spring配置类,添加注解@ComponentScan("ClassPath")表明扫描的包路径
然后在需要被Spring管理的Bean类名添加注解@Component

User.java ( Bean )

@Component //表明这个类注册为Bean组件
public class User {


    private String name;

    public String getName() {
        return name;
    }

    @Value("Juyss") //注入name属性的值
    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "User{" +
                "name=‘" + name + ‘\‘‘ +
                ‘}‘;
    }
}

SpringConfig.java ( Java配置类 )

@Configuration //表明为Spring配置类
@ComponentScan("com.juyss.pojo") //扫描此包下的所有已注册的Bean
public class SpringConfig {
}

ConfTest.java ( 测试类 )

public class ConfTest {

    @Test
    public void Test(){
        ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
        User user = context.getBean("user", User.class); //第一个参数为类名首字母小写
        System.out.println(user);
    }
}

测试类运行结果得到:User{name=‘Juyss‘}

脱离xml使用JavaConfig实现Spring配置

原文:https://www.cnblogs.com/shmebluk/p/13599018.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!