@Bean注解一般是和@Configuration配套使用的
比如一些JavaConfig配置文件要配置一些参数,例如DBPoolConfig,之前的方式可能会以xml文件的方式配置连接池的参数,现在通过JavaConfig.java的方式就可以配置。
用实体类举例
UserEntity
@Data//lombok自动生成setter、getter
public class User {
private String name;
private Integer age;
}
xml方式为User属性赋值
<bean id="User" class="com.per.test.User">
<property name="name" value="zhangsan"/>
<property name="age" value="10"/>
</bean>
.java方式
@Configuration
public class BeanConfig {
@Bean
public User user() {
return new User("zhangsan", 10);
}
}
测试输出时要注意,先获取配置文件再取得bean
xml输出
public void test1() {
ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:/applicationContext.xml");
User user = (User) ctx.getBean("user");
System.out.println(user);
}
java输出
public void test1() {
ApplicationContext ac = new AnnotationConfigApplicationContext(BeanConfig.class);
User user = ctx.getBean(User.class);
System.out.println(user);
}
网友评论