1. 程式人生 > >Spring和SpirngMVC的註解詳情

Spring和SpirngMVC的註解詳情

Spring的註解:

[email protected]用於標註業務呈元件(業務邏輯層)

[email protected]用於標註控制層元件(展現層,MVC——>SpringMVC)
[email protected]用於標註資料訪問元件,即DAO元件(資料訪問層)
[email protected]泛指元件,當元件不好歸類的時候,我們可以使用這個元件進行標註(元件,沒有明確的角色)

[email protected]預設按型別裝配,如果我們想按照名稱裝配,可以結合@Qualifier註解一起使用(Spring提供的註解)
[email protected]
預設按名稱裝配,當找不到與名稱匹配的bean才會按型別裝配(JSR-250提供的註解)
[email protected]把一個類作為IOC的容器,它的某個方法上如果註冊了@Bean,就會作為這個Spring容器中的Bean
8.[email protected]註解作用域。描述的是Spring容器如何新建Bean的實列。
Singleton:一個容器中只有一個Bean的實列,此為Spring的預設配置,全容器共享一個例項
Prototype:每次呼叫新建一個Bean的實列 

[email protected]聲明當前類是一個配置類(相當於一個Spring配置的xml檔案)
[email protected]
,自動掃描包名下所有使用@Service,@Component,@Reponsitory和@Controller的類,並註冊為Bean。
[email protected],註解在方法上,聲明當前方法的返回值為一個Bean。
----------------------------------------------------------------------------------------------------------------------------------------------
[email protected],註解開啟Spring對AspectJ的支援
[email protected]
註解開啟非同步任務支援
[email protected]開啟計劃任務的支援
----------------------------------------------------------------------------------------------------------------------------------------------
[email protected]開啟 Web MVC 的配置支援

----------------------------------------------------------------------------------------------------------------------------------------------
[email protected]開啟對@ConfugurationProperties註解配置Bean的支援
[email protected]開啟對Spring Data JPA Reposititory的支援
[email protected]開啟註解式事務的支援

[email protected]開啟註解式的快取支援

SpringMVC的註解:

[email protected],在SpringMVC中,控制器Controller負責處理由DispatcherServlet分發的請求,它把使用者請求的資料經業務層處理之後封裝成一個Model,然後在把該Model返會給對應的View進行展示。
在SpringMVC 中提供了一個非常簡便的定義Controller 的方法,你無需繼承特定的類或實現特定的介面,只需使用@Controller 標記一個類是Controller ,
然後使用@RequestMapping 和@RequestParam 等一些註解用以定義URL 請求和Controller 方法之間的對映,這樣的Controller 就能被外界訪問到。
此外Controller 不會直接依賴於HttpServletRequest 和HttpServletResponse 等HttpServlet 物件,它們可以通過Controller 的方法引數靈活的獲取到
[email protected] 用於標記在一個類上,使用它標記的類就是一個SpringMVC Controller 物件。分發處理器將會掃描使用了該註解的類的方法,並檢測該方法是否使用了@RequestMapping 註解。
@Controller 只是定義了一個控制器類,而使用@RequestMapping 註解的方法才是真正處理請求的處理器。
單單使用@Controller 標記在一個類上還不能真正意義上的說它就是SpringMVC 的一個控制器類,因為這個時候Spring 還不認識它。那麼要如何做Spring 才能認識它呢?
這個時候就需要我們把這個控制器類交給Spring 來管理。有兩種方式:
(1)在SpringMVC 的配置檔案中定義MyController 的bean 物件。
(2)在SpringMVC 的配置檔案中告訴Spring 該到哪裡去找標記為@Controller 的Controller 控制器。

[email protected]
                        RequestMapping是一個用來處理請求地址對映的註解,可用於類或方法上。用於類上,表示類中的所有響應請求的方法都是以該地址作為父路徑。
RequestMapping註解有六個屬性,下面我們把她分成三類進行說明(下面有相應示例)。
1、 value, method;
value:     指定請求的實際地址,指定的地址可以是URI Template 模式(後面將會說明);
method:  指定請求的method型別, GET、POST、PUT、DELETE等;
2、consumes,produces
consumes: 指定處理請求的提交內容型別(Content-Type),例如application/json, text/html;
produces:    指定返回的內容型別,僅當request請求頭中的(Accept)型別中包含該指定型別才返回;
3、params,headers
params: 指定request中必須包含某些引數值是,才讓該方法處理。
headers: 指定request中必須包含某些指定的header值,才能讓該方法處理請求。

[email protected]和@Autowired
       @Resource和@Autowired都是做bean的注入時使用,其實@Resource並不是Spring的註解,它的包是javax.annotation.Resource,需要匯入,但是Spring支援該註解的注入。
[email protected]和 @SessionAttributes
代表的是:該Controller的所有方法在呼叫前,先執行此@ModelAttribute方法,可用於註解和方法引數中,
可以把這個@ModelAttribute特性,應用在BaseController當中,所有的Controller繼承BaseController,即可實現在呼叫Controller時,先執行@ModelAttribute方法。
@SessionAttributes即將值放到session作用域中,寫在class上面。

相關推薦

SpringSpirngMVC註解詳情

Spring的註解: [email protected]用於標註業務呈元件(業務邏輯層) [email protected]用於標註控制層元件(展現層,MVC——>SpringMVC)[email protected]用於標註資料訪問元件

springspirngmvc整合

<!-- 需要進行 Spring 整合 SpringMVC 嗎 ? 還是否需要再加入 Spring 的 IOC 容器 ? 是否需要再 web.xml 檔案中配置啟動 Spring IOC 容器的 ContextLoaderListener ? 1. 需要: 通常情況下, 類似於資料來源, 事務, 整

springswagger的一些註解、linux

ping tao xid ner 服務 get base app log spring中的一些註解: @Transactional:http://www.cnblogs.com/yepei/p/4716112.html。 @RequestMapping:http://www

SPRINGJDK的註解

one ext ges epo value schema sch www. tor 1.添加xsd約束 xmlns:context="http://www.springframework.org/schema/context" http://www.springf

Spring MVC通過Pageable對象PageableDefault註解獲取分頁信息(MongoDB通過Pageable來操作分頁)

組織 nbsp dal ref 註解 tro urn dir 個性 說明:Pageable同時也能用於操作MongoDB的分頁。 PageableSpring Data庫中定義的一個接口,該接口是所有分頁相關信息的一個抽象,通過該接口,我們可以得到和分頁相關所有信息(例如

Spring中的scope配置@Scope註解

article rac 新的 clas 文件中 常用 sdn web應用 req Scope,也稱作用域,在 Spring IoC 容器是指其創建的 Bean 對象相對於其他 Bean 對象的請求可見範圍。在 Spring IoC 容器中具有以下幾種作用域:基本作用域(si

springspringboot常用註解總結

普通 map 組件 構造 sca service 提交 依賴 demo1 @RequestMapping 這個註解可以用於類和方法上,用於類上,表示父路徑,如類上是demo,方法上是/demo1,那麽訪問路徑就是demo/demo1 該註解有六個屬性:params:指定re

spring中的註解大全應用說明

來源:http://t.cn/RFBJugV @Controller @RestController: @Service @Autowired @RequestMapping @RequestParam @

SpringSpringMVC常用的註解(轉)

轉於:https://blog.csdn.net/u012661010/article/details/73457732               

Spring Boot日誌AOP註解

Spring Boot日誌和AOP註解 Spring Boot日誌 logging常用配置 多環境日誌配置 自定義日誌 AOP:面向切面程式設計 新增aop依賴 AOP的基本概念 實現AOP的

Spring Boot 2 @EnableWebMvc 註解@EnableSpringDataWebSupport 註解使用說明

1. @EnableWebMvc使用說明 @EnableWebMvc 只能新增到一個@Configuration配置類上,用於匯入Spring Web MVC configuration 可以有多個@Configuration類來實現WebMvcConfigurer,以定製

Spring篇02】對於SpringMVC核心原理的理解 & @Controller@RequestMapping註解

之前在【Web篇08】中提到,SpringMVC的核心就是優化了B/S結構(瀏覽器-伺服器),簡化了Servlet的建立; 瀏覽器可以查詢的路徑:WebContent目錄下的jsp檔案,一般在這個目錄下建立個index.jps作為首頁 伺服器可以查詢的路徑:WEB-INF目錄下的jsp

spring事務(5)-----手寫SpringIOC容器框架之手寫@Service@Resource註解

一,xml方式 註解方式就不寫了,主要就是dom4j的解析。 二,註解方式 2.1,我們先來看一下spring自帶的寫法  spring.xml <beans xmlns="http://www.springframework.org/schema/beans" xml

spring事務(6)-----手寫SpringMVC模式(手寫@RequestMapping@Controller註解

一,spring原生態的程式碼分析 1.1,首先,我們先來認識一下SpringMVC的主要元件   前端控制器(DisatcherServlet):接收請求,響應結果,返回可以是json,String等資料型別,也可以是頁面(Model)。   處理器對映器(HandlerMap

藉助Spring自定義註解完成多資料來源配置

前一段時間研究了一下spring多資料來源的配置和使用,為了後期從多個數據源拉取資料定時進行資料分析和報表統計做準備。由於之前做過的專案都是單資料來源的,沒有遇到這種場景,所以也一直沒有去了解過如何配置多資料來源。 後來發現其實基於spring來配置和使用多資

spring下應用@Resource, @Autowired @Inject註解進行依賴注入的差異

為了探尋 ‘@Resource’, ‘@Autowired’, 和‘@Inject’如何解決依賴注入中的問題,我建立了一個“Party”介面,和它的兩個實現類“Person”,“Organization”。這樣我就可以在注入Bean的時候不必使用具體型別(指使用介面型別即可)。這樣做也方便我研究當一個介面有多

java 靜態程式碼塊spring @value等註解注入順序

今天在引用yml配置檔案的時候,因為用到了繼承的靜態程式碼塊。類與類有繼承關係的靜態程式碼塊是先執行父類靜態程式碼塊再執行子類靜態程式碼塊,這個問題不用說。 今天探索的是與spring相關的執行順序 我在專案啟動的時候需要去載入部分配置檔案,這些配置檔案的資訊在子類的靜態程式碼塊需要使用

Spring中@Import註解的作用使用

@Import用來匯入@Configuration註解的配置類、宣告@Bean註解的bean方法、匯入ImportSelector的實現類或匯入ImportBeanDefinitionRegistra

spring框架之AspectJ基於xml基於註解

AOP為Aspect Oriented Programming的縮寫,意為:面向切面程式設計,通過預編譯方式和執行期動態代理實現程式功能的統一維護的一種技術。AOP是OOP的延續,是軟體開發中的一個熱點,也是Spring框架中的一個重要內容,是函數語言程式設計的

朱曄你聊Spring系列S1E9:聊聊Spring的那些註解

本文我們來梳理一下Spring的那些註解,如下圖所示,大概從幾方面列出了Spring的一些註解: 如果此圖看不清楚也沒事,請執行下面的程式碼輸出所有的結果。 Spring目前的趨勢是使用註解結合Java程式碼而不是配置來定義行為、屬性、功能、規則和擴充套件點,因此梳理註解也是梳理Spring功能點的很好的方