婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Spring中常用注解的詳細介紹

Spring中常用注解的詳細介紹

熱門標簽:南京新思維電話機器人 好操作的電話機器人廠家 聊城智能電銷機器人外呼 泰州泰興400電話 怎么申請 百度地圖添加標注圖標樣式 企業怎么在聯通申請400電話 地圖標注市場怎么樣 如何用中國地圖標注數字點 南昌市地圖標注app

spring中使用注解時配置文件的寫法:

?xml version="1.0" encoding="UTF-8"?> 
span style="font-size:18px;">beans xmlns="http://www.springframework.org/schema/beans" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xmlns:context="http://www.springframework.org/schema/context" 
 xmlns:aop="http://www.springframework.org/schema/aop" 
 xsi:schemaLocation=" 
 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd 
 http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
 http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 
 
 aop:aspectj-autoproxy/> 
 context:annotation-config/> 
 context:component-scan base-package="com.test" /> 
/beans> 

context:component-scan />配置項就配置了對指定的包進行掃描,以實現依賴注入。

下面介紹下一些常見注解的使用:

@Autowired 
private IReportService reportService ; 

Spring2.5引入了@Autowired注解,它可以對類成員變量、方法及構造函數進行標注,完成自動裝配的工作。另外,通過@Autowired可以消除get,set方法。@Autowired是根據類型進行自動轉配的。

這里要注意@Resource也可以實現自動裝配,但是@Resource默認是按照名稱進行自動裝配。

這里簡單介紹下什么是按類型進行裝配,什么是按名稱進行裝配?

所謂按類型,就是當Spring容器中存在一個與指定屬性類型相同的bean,那么將該屬性進行自動裝配;如果存在多個該類型的bean,那么跑出異常,并指出不能使用按類型進行自動裝配;如果沒有找到匹配的bean,則什么事都不發生。

所謂按名稱,即根據屬性名進行自動裝配,此項會檢查Spring容器中與該屬性名完全一致的的bean,進行自動裝配。

@Component("reportAction") 
@Scope("request") 
public class ReportAction extends AbstractBaseAction 

@Component注解(下面的解釋來自官方文檔)

@Component、@Service和@Controller。@Component是所有受Spring管理組件的通用形式;
 而@Repository、@Service和@Controller則是@Component的細化, 用來表示更具體的用例(例如,分別對應了持久化層、服務層和表現層)。也就是說, 你能用@Component來注解你的組件類,

 但如果用@Repository、@Service 或@Controller來注解它們,你的類也許能更好地被工具處理,或與切面進行關聯。

例如,這些典型化注解可以成為理想的切入點目標。當然,在Spring Framework以后的版本中,@Repository、@Service和@Controller也許還能攜帶更多語義。如此一來,如果你正在考慮服務層中是該用@Component還是@Service,
 那@Service顯然是更好的選擇。同樣的,就像前面說的那樣,@Repository已經能在持久化層中進行異常轉換時被作為標記使用了。

  @Scope()指定的是bean的作用域

@Scope("prototype")注解

    Spring容器在進行輸出prototype類型的對象時,會每次重新生成一個新的對象給請求方,雖然這種類型的對象的實例化以及屬性設置都是由Spring容器來完成的,但是只要準備完畢,并且對象實例返回給請求方的之后,容器就不會再持有當前對象的引用,請求方需要自己來當前對象后繼生命周期的管理,包括該對象的銷毀。最典型的案例就是Spring容器和Struts2進行整合時,要將action的scope的改成prototype。

@Scope("singleton")注解

此取值表示容器中只存在一個實例,所有引用該bean都是單一實例。這個就是典型的單例模型。

@Scope("request")注解

bean id="requestPrecessor" class=".....RequestPrecessor" scope ="request" />

      Spring容器,即XmlWebApplicationContext回為每一個全新的RequestPrecessor,當請求結束后,該對象的生命周期即結束。當有100個Http請求同時發出時,容器會分別對每個請求創建不同的RequestPrecessor實例,它們之間不相互干擾,簡單來講,request可以看做是prototype的特例,request的應用場景更具體點,其他基本沒啥區別。

@Scope("session")注解

  對于Web應用來說,放在session中最多的就是用戶的登錄信息,對于放在session中的信息,可以將其scope的類型改為session,Spring容器會為每個獨立的session創建屬于自己的全新的UserPreference實例,比request類型的bean存活更長的時間,,其他方面基本沒啥區別,類似于javaweb中的session。

  最后,說一下為什么@Respository只能標注在Dao層,這是因為Spring提供的這個注解不僅將類識別為Bean,同時它能將所

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • 淺談spring 常用注解
  • 詳解springmvc常用5種注解
  • spring boot 的常用注解使用小結
  • springBoot系列常用注解(小結)
  • Spring框架學習常用注解匯總

標簽:自貢 烏蘭察布 山南 吉林 白銀 開封 臨汾 銅川

巨人網絡通訊聲明:本文標題《Spring中常用注解的詳細介紹》,本文關鍵詞  Spring,中,常用,注解,的,詳細,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Spring中常用注解的詳細介紹》相關的同類信息!
  • 本頁收集關于Spring中常用注解的詳細介紹的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 柳河县| 武安市| 宁德市| 卓资县| 义马市| 阳曲县| 红河县| 自贡市| 商都县| 宜州市| 出国| 旺苍县| 庆元县| 凤山市| 临武县| 二手房| 长汀县| 宜阳县| 崇州市| 博野县| 顺义区| 临沂市| 长丰县| 福海县| 南漳县| 株洲市| 安义县| 双柏县| 龙海市| 江阴市| 巴彦县| 南宫市| 仙桃市| 太白县| 抚顺县| 开原市| 建瓯市| 孟津县| 郑州市| 阿拉尔市| 三原县|