您的位置:首页 > 编程语言 > Java开发

SIA实战(二):不用XML,使用java类配置Bean

2017-02-13 20:58 399 查看
如果你已经厌烦使用XML配置Spring Bean,那么你可以尝试使用普通的java类来配置bean,这样避免了XML中字符串导致的错误,让异常从运行期提前到了编译器

以下是基于java配置bean的详细过程,文章的最后附上源码

1.首先配置组件扫描器,这也是唯一需要配置xml的地方

<context:component-scan base-package="com.yonyou.config"/>


2.使用@Configuration注解编写配置类

@Configuration
public class JavaConfig {
@Bean
public User user(){
User user = new User("jay","1234");
user.setAddress(this.addr());
return user;
}

@Bean
public Address addr(){
Address addr = new Address();
addr.setProvice("BJ");
addr.setCity("beijing");
return addr;
}
}


第一步的组件扫描配置可以扫描到@Configuration注解,表示这是一个用于配置Spring的类

从代码中可以看到方法上都加了@Bean,表示这个方法返回的是一个Bean,由Spring容器管理,而方法名就是Bean的id

同时为Bean装配属性也变得十分简单,可以用构造器注入,也可以用setter注入,更加符合java的编写习惯

3.编写测试代码

目前已经向Spring容器注册了Bean,那么怎么取出来呢?

ApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);
Address address = (Address) context.getBean("addr");
System.out.println(address);
User user = (User) context.getBean("user");
System.out.println(user);


可以看到这里使用了AnnotationConfigApplicationContext,传入的参数是java配置类的字节码对象

输出结果如下:

Address [provice=BJ, city=beijing]
User [username=jay, password=1234, address=Address [provice=BJ, city=beijing]]


工程源码:http://download.csdn.net/detail/yj7758423/9753621
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring