@Component, @Repository, @Service,@Controller

@Component最普通的组件,可以被注入到spring容器进行管理
@Repository作用于持久层
@Service作用于业务逻辑层
@Controller作用于表现层(spring-mvc的注解)

@Controller注解类进行前端请求的处理,转发,重定向。包括调用Service层的方法 

 @Service注解类处理业务逻辑  

@Repository注解类作为DAO对象(数据访问对象,Data Access Objects),这些类可以直接对数据库进行操作  有这些分层操作的话,代码之间就实现了松耦合,代码之间的调用也清晰明朗,便于项目的管理

@Component,@Service,@Controller@Component是一个通用的Spring容器管理的单例bean组件。而@Repository@Service@Controller就是针对不同的使用场景所采取的特定功能化的注解组件。

因此,当你的一个类被@Component所注解,那么就意味着同样可以用@Repository@Service@Controller来替代它,同时这些注解会具备有更多的功能,而且功能各异。

最后,如果你不知道要在项目的业务层采用@Service还是@Component注解。那么,@Service是一个更好的选择。

总结

@Component@Service@Controller@Repository是spring注解,注解后可以被spring框架所扫描并注入到spring容器来进行管理  @Component是通用注解,其他三个注解是这个注解的拓展,并且具有了特定的功能  @Repository注解在持久层中,具有将数据库操作抛出的原生异常翻译转化为spring的持久层异常的功能。  @Controller层是spring-mvc的注解,具有将请求进行转发,重定向的功能。  @Service层是业务逻辑层注解,这个注解只是标注该类处于业务逻辑层。  用这些注解对应用进行分层之后,就能将请求处理,义务逻辑处理,数据库操作处理分离出来,为代码解耦,也方便了以后项目的维护和开发。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值