小白面试题:@Component@Controller@Service@Respository的区别

Posted 长安紫薯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小白面试题:@Component@Controller@Service@Respository的区别相关的知识,希望对你有一定的参考价值。

@Component、@Controller、@Service、@Respository 这4个注解的区别
在这里插入图片描述
@Controller
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Controller {

@Service
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Service {

@Repository
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Repository {

根据它们的源码可以看到,Controller、Service、Repository其本质就是Component。
它存在的本质只是给开发者看的,对Spring而言它们就都是Component。
@Controller 控制层类,@Service 业务层类,@Repository 持久层类,@Component 无法归类到前3种时就称为组件。

以上是关于小白面试题:@Component@Controller@Service@Respository的区别的主要内容,如果未能解决你的问题,请参考以下文章

新手小白必知的5道Web前端经典面试题

小白面试题:@Component@Controller@Service@Respository的区别

小白面试题:@Component和@Bean的区别

小白面试题:@Controller和@RestController的区别

小白面试题:Spring中Bean的初始化过程

前端小小白的学习之路整理几道面试题之(HTTP协议)