Spring中常用的注解及作用

2022-10-13,,,

@component(value)
配置类,当使用该注解时,springioc会将这个类自动扫描成一个bean实例
不写的时候,默认是类名,且首字母小写

@componentscan
默认是代表进行扫描当前包
含有两个参数:
basepackages:可以扫描多个包,是一个数组类型,可能会造成产生多个bean实例
basepackageclasses:可以扫描多个方法,是一个数组类型,可能会造成产生多个bean实例

@autowired
自动装配,会根据类型寻找指定的bean,required:表示假如说在bean目录下找不到指定的注解还需不需要注入,默认是true 修改为false时,表示假如说没有找到可以允许不注入。

@primary
表示当通过一个接口或者抽象类注入时,存在多个实现类,那么使用该注解可以告诉ioc,优先注入parmary修饰的

@qualifier
假如说按名称查询指定的方法时,采用qulifier(方法名)

@bean
当使用该注解时,springioc会将这个方法自动扫描成一个bean实例
不写的时候,默认是方法名,且首字母小写
可以使用bean 中设置name(bean的名字),autowire是否是一个引用的bean方法默认值autowire.no,initmothed初始化方法,destroymethod销毁方法

@scope
可以是用该该注解设置多个bean对象

@importresource({"classpath:xxx.xml"})
能够读取多个xml文件,这样就可以引入多个xml定义的bean
@import({xx.class,xxx.class})
能够读取多个class文件

@profile
使用该注解可以给spring配置多个数据源 连接池对象
在bean中配置时,
可以使用<beans profile="数据源1"></beans>
<beans profile="数据源2"></beans>
1.在类中配置,使用时,需要在指定的类中激活
@activeprofiles("数据源1")
2.在虚拟中配置
3.在web.xml文件中配置
<init-param>
<param-name>spring.profiles.active</param-name>
<param-name>数据源1</param-name>
</init-param>
<init-param>
<param-name>spring.profiles.active</param-name>
<param-name>数据源2</param-name>
</init-param>
还有两种

加载配置文件:
使用注解:@propertysource(value="classpath:xxx")
使用xml文件配置 <context:property-placeholder location="classpath:db.properties"/>

@contional({xx.class})(了解)
可以条件化,装配bean;

@value("#{xxx}")
可以直接给属性赋值
也可以直接给bean元素赋值

《Spring中常用的注解及作用.doc》

下载本文的Word格式文档,以方便收藏与打印。