1. 程式人生 > >Spring @controller,@service,@repository,@component區別

Spring @controller,@service,@repository,@component區別

今天在做課設的時候發現SpringBoot一直用不了Service層的類。。記得有個@component服註解,百度這個註解的時候,發現了一個新大陸(關於@controller,@service,@repository,@component區別),這解決了我學SSM的一個困惑,特此分享。

原文地址:https://blog.csdn.net/weixin_37848710/article/details/79609130


1、@controller 控制器(注入服務)

用於標註控制層,相當於struts中的action層

2、@service 服務(注入dao)

用於標註服務層,主要用來進行業務的邏輯處理

3、@repository(實現dao訪問)

用於標註資料訪問層,也可以說用於標註資料訪問元件,即DAO元件.

4、@component (把普通pojo例項化到spring容器中,相當於配置檔案中的 <bean id="" class=""/>)

泛指各種元件,就是說當我們的類不屬於各種歸類的時候(不屬於@Controller、@Services等的時候),我們就可以使用@Component來標註這個類。

 

說明: 

<context:component-scan base-package=”com.*”> 
上面的這個例子是引入Component元件的例子,其中base-package表示為需要掃描的所有子包。 
共同點:被@controller 、@service、@repository 、@component 註解的類,都會把這些類納入進spring容器中進行管理