@Component、@Service、@Controller、@Rrepository說明

自己開發了一個股票智慧分析軟體,功能很強大,需要的點擊下面的鏈接獲取:

//www.cnblogs.com/bclshuai/p/11380657.html

1       Spring容器

Spring容器是Spring的核心,一切Spring bean都存儲在Spring容器內,並由其通過IoC(inversion of Control)技術管理。Spring容器也就是一個bean工廠(BeanFactory)。應用中bean的實例化,獲取,銷毀等都是由這個bean工廠管理的。org.springframework.context.ApplicationContext介面用於完成容器的配置,初始化,管理bean。一個Spring容器就是某個實現了ApplicationContext介面的類的實例。也就是說,從程式碼層面,Spring容器其實就是一個ApplicationContext實現類對象。有兩種方式獲取容器中的對象。

(1)   xml配置顯示獲取。如果要用xml方式配置bean,需要顯示創建ApplicationContext,顯式new一個ClassPathXmlApplicationContext或者FileSystemXmlApplicationContext來初始化一個Spring容器,通過id去容器中獲取對象;

(2)   註解方式自動裝配。如果採用註解方式聲明類,不要顯示創建ApplicationContext對象。通過註解方式自動裝配。

2       註解的機制和原理

註解的作用就是將定義的類註冊到spring容器中,交給spring容器去管理、創建、銷毀對象。@controller 、@service、@repository 、@component 註解的類,都會把這些類納入進spring容器中進行管理。之前是通過xml配置文件(<bean id=”zoo” class=”com.spring.model.Zoo” />)去配置注入到spring容器的類,現在用註解取代,更加方便。

2.1      常用註解說明

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

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

 

(2)@service 服務(注入dao)

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

 

(3)@Rrepository(實現dao訪問)

用於標註數據訪問層,也可以說用於標註數據訪問組件,即DAO組件

.

 

(4)@Component (把普通pojo實例化到spring容器中,相當於配置文件中的

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

 

(5)@Autowired:自動根據類型注入

@Qualifier(「名稱」):指定自動注入的id名稱

 

(6)@Resource(「名稱」)根據名稱注入

@ PostConstruct 自定義初始化

@ PreDestroy 自定義銷毀

 

 

自己開發了一個股票智慧分析軟體,功能很強大,需要的點擊下面的鏈接獲取:

//www.cnblogs.com/bclshuai/p/11380657.html