Spring注解@Component、@Repository、@Service、@Controller区别
2016-04-08 17:21
483 查看
Spring 中提供 @Component、@Repository、@Service 和 @Controller。
在 Spring 版本中,这 4个注释几乎是等效的,但是从注释类的命名上,很容易看出后3 个注释分别和持久层、业务层和控制层(Web 层)相对应。
虽然目前这3 个注释和 @Component 相比没有什么新意,但 Spring 将在以后的版本中为它们添加特殊的功能。
所以,如果 Web 应用程序采用了经典的三层分层结构的话,最好在持久层、业务层和控制层分别采用上述注解对分层中的类进行注释。
@Service
用于标注业务层组件,对应的是业务层Bean
@Controller
用于标注控制层组件(如struts中的action),对应表现层的Bean,也就是Action。
@Repository
用于标注数据访问组件,即DAO组件,对应数据访问层Bean
@Component
泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。不推荐使用。
在 Spring 版本中,这 4个注释几乎是等效的,但是从注释类的命名上,很容易看出后3 个注释分别和持久层、业务层和控制层(Web 层)相对应。
虽然目前这3 个注释和 @Component 相比没有什么新意,但 Spring 将在以后的版本中为它们添加特殊的功能。
所以,如果 Web 应用程序采用了经典的三层分层结构的话,最好在持久层、业务层和控制层分别采用上述注解对分层中的类进行注释。
@Service
用于标注业务层组件,对应的是业务层Bean
@Controller
用于标注控制层组件(如struts中的action),对应表现层的Bean,也就是Action。
@Repository
用于标注数据访问组件,即DAO组件,对应数据访问层Bean
@Component
泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。不推荐使用。
相关文章推荐
- Java线程池
- JAVA第4次作业
- 《JAVA高级程序设计》第四周作业
- Spring定时任务的几种实现
- java持有对象-map-基本用法
- java解析获取Excel中的数据--同时兼容2003及2007
- AFNetworking 3.0携带参数上传文件Demo 付java服务器端代码
- 用javah导出类的头文件,常见错误及解决方法
- 公司正式学习java第一周(作业实例)
- Java环境配置
- java使用部分字符串搜索文件
- LeetCode 238 -Product of Array Except Self ( JAVA )
- SpringMVC Controller介绍
- 升级java1.8及ssh版本中碰到的问题(四)
- java:按行读取服务器压缩文件内容
- java condition使用及分析
- Java中缓存之内存缓存
- Java中级开发工程师知识点归纳
- JAVA第四次作业
- Spring - 控制反转IOC