引领先锋|spring框架之注解的使用

今天是刘小爱自学Java的第122天 。
感谢你的观看 , 谢谢你 。
引领先锋|spring框架之注解的使用学习内容安排如下:

  • Spring注解的使用 。
  • JavaWeb项目的搭建 。
  • Spring的Web集成 。
本来还计划学Spring的junit测试集成的 , 结果又没时间了 。
一、Spring的注解IoC容器是Spring的特色之一 , 可以使用它管理很多Bean , 前几天我们都是将这些Bean配置在applicationContext.xml文件中的 。
而注解的作用在于:用了注解之后 , 就不需要在xml文件中配置这些了。
1开启注解
引领先锋|spring框架之注解的使用①开启spring的注解
context:annotation-config
让注解有效了 , 能够识别注解 。
②配置注解扫描
context:component-scan
用来专门扫描含有@Component注解的类 , 自动将其作为bean 。
【引领先锋|spring框架之注解的使用】base-package
要扫描包的路径 , 包含子包 , com.liuxiaoai表示该包下的所有子包和类定义注解都有效.
注意:注解扫描配置的时候 , 会自动开启注解功能 , 也就是说有了②的话 , ①就不需要了 。
如果是注解+XML组合使用 , 可以只开启① 。
2注解的使用
引领先锋|spring框架之注解的使用①@Component注解
相当于将对象存放到spring容器中 。
其中@Component有三个子注解:
  • @Controller用于标注控制层组件 , web层 。
  • @Service用于标注业务层 , service层 。
  • @Repository用于标注数据访问组件 , dao层 。
而@Component泛指组件 , 当组件不好归类的时候 , 我们可以使用这个注解进行标注 。
②@Autowired注解
将ProductDao注入到了ProductService
单独使用@Autowired, 表示按照类型注入 , 会到spring容器中查找ProductDao的类型 , 对应中class的属性值 。
如果同类型有多个 , 可以使用@Autowired + @Qualifier表示按照名称注入 。
会到spring容器中查找productDao名称 , 对应中id的属性值 , 比如:@Qualifier("productDao")
除此之外还有一种注解方法:
使用@Value("#{productDao}") , 也就是Value注解加上spEL表达式 , 也可以 。
3注解测试
引领先锋|spring框架之注解的使用通过测试我们能发现 , 调用service层代码 , dao层代码也能被调用 。
注意:上述代码中可没有实例化dao层对象 。
其实无论是spring注解也好 , 还是配置xml也罢 , 都是省略new对象这个步骤 。
将dao层和service层对象关联起来了 , 没有new对象实例化 , 也能调用dao层代码 。
当然spring肯定不止这么简单 , 只不过目前来说还没有学到其它的知识点 。
二、JavaWeb项目搭建1配置一个JavaWeb项目
这个在以前我们就配置过好多遍了:
引领先锋|spring框架之注解的使用①设置打包方式
在pom文件中 , 使用packaging标签添加web工程的打包方式为war 。


推荐阅读