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

spring-注解详解

2016-06-30 18:04 447 查看
@Component
功能:指定对应的类为Spring控制的bean
格式:定义在类的上方,可以为类指定bean名称
定义UserDAOImpl类为Spring控制的bean,未指定名称

 
定义UserDAOImpl类为Spring控制的bean,名称”userDAO”

 
bean的名称可以定义多个,如@Component(“u1,u2,u3”)
@Component衍生注解
@Repository 用于对数据层实现类进行标注

@Service 用于对业务逻辑层实现类进行标注

@Controller 用于对控制层实现类进行标注

目前上述三种注解与@Component功能完全相同,仅仅是名称上的区别
@Autowired
功能:标注类的成员变量为自动装配注入属性
格式:定义在成员变量的上方
参数:required
可选值:true(默认值)/false
作用:标识该属性是否必须注入,如果未对其指定注入的值,则系统抛出异常
注入不同类别的属性需要使用不同的注解
简单类型:@Value
对象类型;@Qualifier
 
@Value
功能:为属性注入的简单类型的值
格式:定义在成员变量的上方
注意:该注解与@Autowired配合使用

 
说明:无论何种类型,全部以字符串的形式传递值
@Qualifier
功能:为属性注入的Bean类型的值
格式:定义在成员变量的上方
注意:该注解与@Autowired配合使用
 

@Qualifier必须给出注入的bean的名称
如果对应的bean不存在,抛出异常,注入失败
为@Autowired指定参数required=false,避免注入失败时候抛出异常
@Resource
Spring提供对JSR-250中定义@Resource标准注解的支持。
@Resource与@Autowired功能非常相似,用于bean的自动装配,格式略有区别

 
@Scope
功能:为当前Bean指定scope参数,默认singleton
格式:定义在类的上方

 
@Bean
功能:指定当前方法返回的对象为指定名称的Bean
格式:定义在方法的上方
注意:要求方法返回指定为Bean的对象
通过配置的形式Bean已经存在,但是应用上下文还不知道此处定义了Bean,因此需要对拥有上述配置的类进行说明,使JVM在加载该类时,认定该类是一个用于配置Bean的类,其中的配置是用于加载Bean的配置,使用@Configuration注解完成。
@Configuration(服务于自动扫描)
功能:指定当前类为配置类,用于加载Bean定义
格式:定义在类的上方
注意:该类要被设置在注解自动扫描对应的包下
 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: