Bean配置(注解)【了解】【操作】
来源:互联网 发布:光大银行 大数据 编辑:程序博客网 时间:2024/06/08 09:14
1.配置Bean使用@Component注解
如需为Bean定义名称,在参数中添加Bean名称@Component("beanName")
2.设定Spring的自动扫描路径,用于检测对应的Bean是否配置了注解,并加载配置了注解的类 a)开启context空间的支持
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
">
b)开启自动扫描功能,并指定扫描的路径
<context:component-scan base-package="cn.itcast.annotation"></context:component-scan> 说明:扫描路径可以设置多个,中间使用,隔开,扫描路径包含指定包和子包内所有的类
3.Spring提供了3个注解开发Bean的兼容格式,用于后期分层设计扩展
@Repository 用于数据层实现类标注
@Service 用于业务逻辑层实现类标注
@Controller 用于控制层实现类进行标注
4.为Bean注入简单类型属性
a)在属性名上方声明该属性自动装配@Autowired
b)在属性名上方声明该属性注入的值@Value(value)
@Autowired
@Value("itcast")
private String msg;
注意:注解自动装配属性值无需提供对应属性的setter方法
5.为Bean注入引用类型属性
a)在属性名上方声明该属性自动装配@Autowired
b)在属性名上方声明该属性注入的值@Qualifier(bean引用名称)
@Autowired
@Qualifier("anno2")
private AnnotationOther other;
注意:被注入的Bean一定要存在,无需提供对应属性的setter方法
6.@Autowired注解属性required用于声明自动装配的数据是否是必须的
如果required=true,必须为其装配数据,如果没有值,抛出异常
如果required=false,自动装配数据失败,则注入值为null
7.Spring支持JSR-250规范提供的@Resource注解的支持
格式一:@Resource(name="myImpl")
格式二:@Autowired(required=false)
@Qualifier("myImpl")
以上两种格式效果相同
8.Bean声明周期注解 @PostConstruct 功能:为当前Bean指定init-method参数 格式:定义在成员方法的上方,兼容静态方法 @PreDestroy 功能:为当前Bean指定destory-method参数 格式:定义在成员方法的上方,兼容静态方法 注意:要求当前类被注册为Bean,否则无效果 9.Bean作用域注解 在类的定义上方添加@Scope指定Bean的作用域 常用:@Scope("prototype") 默认:@Scope("singleton") 10.Spring3.0注解支持 @Configuration配置当前类为配置类,用于加载其中配置的Bean,与静态工厂初始化Bean很相似 @Bean(name="b1")将配置类中的某个方法的返回值声明为Bean,该方法必须返回一个对象 @Configuration //设定该类参与自动扫描 public class MyBeanFactory { @Bean(name={"aa","bb","cc"}) //设定该方法的返回值是一个Bean public static BookService getInst(){ return new BookService(); } } 以上操作必须基于自动扫描功能,如不开启自动扫描,Spring将无法查找到对应的注解配置 11.可以不使用自动扫描使用Bean AnnotationConfigApplicationContext对象可以手工加载基于注解配置的Bean //用于手工添加注解开发Bean的上下文对象 AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(); //加载配置管理类 ctx.register(MyConfiguration.class); //刷新上下文对象 ctx.refresh(); 注意:注册完成后一定要进行刷新,否则加载的Bean将无法被使用
- Bean配置(注解)【了解】【操作】
- Spring4学习(三):注解配置bean
- Spring bean注解配置(1)
- Spring 通过注解配置 Bean(1)
- Spring 通过注解配置 Bean(2)
- Spring -- 注解配置Bean
- spring 注解配置bean
- 通过注解配置Bean
- Spring - 注解配置Bean
- Spring Bean配置:注解配置
- 装配Bean(2)-通过注解配置Bean
- Bean 基于注解的配置
- spring 注解方式配置Bean
- spring 注解扫描bean配置
- Spring基于注解配置Bean
- spring 注解方式配置Bean
- spring通过注解配置Bean
- Spring_通过注解配置bean
- php 经典的算法题你懂的
- fork() && fork() || fork()
- 大型网站架构系列:缓存在分布式系统中的应用(一)
- windows 下boost 64 位和32位库的编译编译
- JTAC STLINK 接口
- Bean配置(注解)【了解】【操作】
- 周末在家工作时候的状态
- 在MFC中生成数据源过程中所遇到的问题及解决(如有错误,请指出)
- 基于qt和opencv3实现机器学习之:利用逻辑斯谛回归(logistic regression)分类
- ubuntu将网址在桌面创建快捷方式双击打开
- 如何将写好的驱动程序编译进内核
- NYOJ-303-序号互换(第四届河南省程序设计大赛A题(模拟))
- 自己犯的错误
- C&C++--day1