概述
Spring框架,包括以后学的几乎所有框架,使用注解开发来代替配置文件开发是整个行业的趋势
下面介绍Spring的注解以及用途
@Component(String value)
:在类上用于实例化Bean,参数value可以给该Bean取名,也就是id
@Controller()
@Serrvice()
@Repository()
以上三个注解分别表示在web、service和dao三层架构上的实例化Bean,与Component除了能够更快识别该类的类型没有逻辑上的区别@Autowired
:根据类型依赖注入,但Spring容器中若存在多个同类型的对象,则无法注入@Qualifier()
:结合@Autowired
使用来根据名称进行依赖注入@Resource()
:相当于上面两个结合的使用@Value()
:用于依赖注入普通属性,参数可以结合EL表达式使用更加高效@Scope()
:标注Bean的作用范围@PostConstruct()
:标注为初始方法@PreDestroy
:标注为销毁方法
在使用以上注解时,必须在配置文件中指定Spring需要解析哪些文件中的注解,否则注解无效:
<context:component-scan base-package="com"/>
<!-- Spring会对该包名包括其子包下的所有java文件进行扫描解析注解 -->
在学习了以上注解后,我们会发现,有些功能,比如上面的黑体字,这些注解必须在配置文件中配置,这样就达不到我们用注解来代替配置文件的目的了,因此Spring引入了一些新注解,并导入个一个思想,用一个类来代替一个文件:
@Configuration
:指定某个类为一个Spring配置类,当创建容器时会从该类上加载,也就相当与该类充当了Spring核心配置文件的角色@ComponentScan(value)
:类似于上面的<context:component-scan base-package="com"/>
,将包名加入参数value实现在某个包及其子包解析注解,该注解一般同@Configuration
放在同一个核心配置类中@Bean
:使用在方法上,将方法返回值作为一个实例的对象存在Spring容器中;我们知道上面的@Component等注解是在类的基础上的,并默认将该类的无参构造函数作为实例化对象的方法,而``@Bean
注解则是以任意有返回值的方法作为主体的@PropertySource("classpath:xxx.properties")
:用于加载properties配置文件,而配置文件中的取值可以考虑用@Value()
结合EL表达式来使用@Import({Config1.class,Config2.class})
:在一个核心配置类中写所有的配置显然是不可取的,因此我们应该按照业务功能来分文件(类)编写,但核心配置类只有一个,也就是有@Configuration
的类;在该类中导入其他配置类即可用到此注解
最后
以上就是谦让蜜蜂为你收集整理的Spring的注解开发的全部内容,希望文章能够帮你解决Spring的注解开发所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复