提示信息

@Configuration, @Controller, @Service, @Repository 区别?

忘年交 已关注

在Spring框架中,@Configuration, @Controller, @Service, @Repository都是特殊类型的@Component注解,它们用于不同的上下文,并附加了一些额外的行为:

  1. @Configuration: 用在类上,表示该类是一个配置类,里面可能有0个或多个被@Bean注解的方法。这些方法返回一个实例,该实例会被Spring容器管理。

  2. @Controller: 主要用在web层,即控制器层。标记了@Controller的类将被视为请求处理类,可以使用@RequestMapping等相关注解进行URI映射及请求处理。

  3. @Service: 主要用在业务逻辑层。这个注解没有添加任何额外的行为,但通过使用它,你可以明确地定义业务层的组件。在实践中,通常在此层中进行事务控制。

  4. @Repository: 主要用在数据访问层,即DAO层。除了将类标识为Bean之外,它还能将数据库操作抛出的原生异常转化为Spring's DataAccessException。

总的来说,这四种注解都是将类注册到Spring容器中,只是它们的用途和所在的应用层次不同。另外,它们也为Spring AOP(Aspect Oriented Programming)提供有意义的切点。

    遇到难题? "AI大模型GPT4.0、GPT" 是你的私人解答专家! 点击按钮去提问......
忘年交 关注 已关注

最近一次登录:2023-09-25 17:25:29   

暂时还没有签名,请关注我或评论我的文章
×
免费图表工具,画流程图、架构图