spring框架之注解的使用
今天是刘小爱自学Java的第122天 。
感谢你的观看 , 谢谢你 。
文章图片
学习内容安排如下:
Spring注解的使用 。
JavaWeb项目的搭建 。
Spring的Web集成 。
本来还计划学Spring的junit测试集成的 , 结果又没时间了 。
一、Spring的注解
IoC容器是Spring的特色之一 , 可以使用它管理很多Bean , 前几天我们都是将这些Bean配置在applicationContext.xml文件中的 。
而注解的作用在于:用了注解之后 , 就不需要在xml文件中配置这些了 。
1开启注解
文章图片
①开启spring的注解
context:annotation-config
让注解有效了 , 能够识别注解 。
②配置注解扫描
context:component-scan
用来专门扫描含有@Component注解的类 , 自动将其作为bean 。
base-package
要扫描包的路径 , 包含子包 , com.liuxiaoai表示该包下的所有子包和类定义注解都有效.
注意:注解扫描配置的时候 , 会自动开启注解功能 , 也就是说有了②的话 , ①就不需要了 。
如果是注解+XML组合使用 , 可以只开启① 。
2注解的使用
文章图片
①@Component注解
相当于将对象存放到spring容器中 。
其中@Component有三个子注解:
@Controller用于标注控制层组件 , web层 。
@Service用于标注业务层 , service层 。
@Repository用于标注数据访问组件 , dao层 。
而@Component泛指组件 , 当组件不好归类的时候 , 我们可以使用这个注解进行标注 。
②@Autowired注解
将ProductDao注入到了ProductService
单独使用@Autowired , 表示按照类型注入 , 会到spring容器中查找ProductDao的类型 , 对应<beanclass=””>中class的属性值 。
如果同类型有多个 , 可以使用@Autowired+@Qualifier表示按照名称注入 。
会到spring容器中查找productDao名称 , 对应<beanid=””>中id的属性值 , 比如:@Qualifier(''productDao'')
除此之外还有一种注解方法:
使用@Value(''#{productDao}'') , 也就是Value注解加上spEL表达式 , 也可以 。
3注解测试
文章图片
通过测试我们能发现 , 调用service层代码 , dao层代码也能被调用 。
注意:上述代码中可没有实例化dao层对象 。
其实无论是spring注解也好 , 还是配置xml也罢 , 都是省略new对象这个步骤 。
将dao层和service层对象关联起来了 , 没有new对象实例化 , 也能调用dao层代码 。
当然spring肯定不止这么简单 , 只不过目前来说还没有学到其它的知识点 。
二、JavaWeb项目搭建
1配置一个JavaWeb项目
这个在以前我们就配置过好多遍了:
文章图片
①设置打包方式
在pom文件中 , 使用packaging标签添加web工程的打包方式为war 。
②编辑项目结构
快捷键Ctrl+Shift+Alt+S即可打开 。
找到当前模块下的web文件 , 如果没有右击模块添加web , 添加web目录 , 目录结构必须为:项目名 srcmainwebapp
文章图片
③添加web.xml文件
web.xml文件是在webapp下的WEB-INF路径下面 。
④最终项目结构图
webapp、resources以及Java是在同一个层级目录的 , 都是在main路径下面 。
其中关于依赖的引入 , 需要什么就从父工程中引入即可 , 在此就不详细说明了 。
2配置Tomcat插件
以前是直接在idea中配置Tomcat , 现在因为是maven工程 , 也可以使用Tomcat插件 。
文章图片
①配置Tomcat插件
同样地 , 通过父工程中的pom文件引入即可 。
其中通过configuration标签 , 我们可以配置Tomcat的端口和路径 。
②运行Tomcat
点击Tomcat7:run即可运行Tomcat 。
为了更便捷地运行Tomcat , 可以将其配置到idea菜单栏中:
文章图片
三、Spring的Web集成
一样还是Java三层代码的编写 。
1编写代码
文章图片
①开启spring注解功能
这不用多说 , 刚学习了的 。
②service层代码编写
将HelloService对象提交到spring容器中管理 , 同时注入HelloDao 。
在方法中编写一条输出语句作为测试 , 并调用dao层的方法 。
③dao层代码编写
将HelloDao对象提交到spring容器中管理 , 同时在方法中写一条输出语句作为测试 。
文章图片
④web层代码编写
通过注解开发创建一个HelloServlet 。
以前我们都是直接new一个service层对应的对象 , 现在使用spring框架了 , 通过spring工厂获取即可 。
2项目测试
文章图片
启动Tomcat , 并在浏览器上输入对应的路径(HelloServlet上的注解即为对应访问路径) , 访问服务器 。
如果在idea控制台上会输出语句 , 证明该路径成功访问到了服务器 , 并且执行到了service层和dao层的代码 。
最后
时间受限 , 还有一个Spring监听器也没时间弄了 , 这块应该还算简单 , 马上要学的AOP面向切面编程才是重点 , 并且据说很难 。
谢谢你的观看 。
【spring框架之注解的使用】如果可以的话 , 麻烦帮忙点个赞 , 谢谢你 。
推荐阅读
- 埃隆·马斯克|马斯克薛其坤对谈:火星地球各有生存之道
- 它,有“蔬菜之王”的美称,炒一炒就出锅,清爽可口,好吃不胖
- 菜籽饼|菜籽饼被誉为果园之宝,但用错了烧苗烧根,果农如何来使用?
- 冰岛|数万次地震之后 冰岛一火山爆发
- 春天吃饺子,韭菜荠菜靠边站,用这菜做馅,一年之中现在最好吃
- 火星|火星水的“消失”之谜解开?或有多达99%如今藏在火星地壳中
- 抑郁症|育儿博主之子因抑郁症身亡,精神崩塌后的父亲和妈妈粉有何风险?
- 肝纤维化|肝纤维化诊断共识解读(二)
- 家里的主厨要注意:4种蔬菜吃之前一定要焯水,避免食物中毒
- 人工角膜|每70人只有一人等到捐献角膜!国产人工角膜来了!价格是进口十分之一