Springboot 注解的区别

Posted liweicai137

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Springboot 注解的区别相关的知识,希望对你有一定的参考价值。

@Service用于标注业务层组件
@Controller用于标注控制层组件(如struts中的action)
@Repository用于标注数据访问组件,即DAO组件.
@Component泛指组件,当组件不好归类的时候,可以使用这个注解进行标注。

在2.5以前功能是等效的,但是随着发展注解之间的功能发生细化,具体特性请转至http://ifeve.com/spring-5-new/ 内容很详细

例如:@Controller注解了一个类,那么Spring就会自动的去扫描它里面的@RequestMapping,换成别的注解代替@Controller就不行

原文链接:https://blog.csdn.net/drdongshiye/article/details/78239493

1、使用 @Configuration 时,会为该类生成CGLIB代理对象的子类Class,并对方法拦截,第二次调用student()方法时直接从BeanFactory之中获取对象,所以得到的是同一个对象。
2、而 @Component 则不会生成 CGLIB 代理Class,所以多次调用方法 student() 就会生成多个不同的对象。
3、如果你可以改变写法,比如将 Student 对象通过注入的方式或者放到 teacher 方法作为参数自动注入而不是直接调用方法,也可以避免多次 new 对象的问题。在细节上能注意使用的话,两者都可以使用。但是既然是配置类,还是建议使用 @Configuration ,毕竟顾名思义嘛。


原文链接:https://blog.csdn.net/catoop/article/details/97533038

以上是关于Springboot 注解的区别的主要内容,如果未能解决你的问题,请参考以下文章

Springboot 注解的区别

Springboot 注解的区别

关于SpringBoot注解@RestController和@Controller的区别

SpringBoot中常用注解@Controller/@RestController/@RequestMapping的区别

SpringBoot的注解@Configuration @value 的区别

springboot @value和@configurationproperties注解的区别