1. 程式人生 > >Spring註解之@Autowired詳解

Spring註解之@Autowired詳解

使用@Autowired註解,標記類的建構函式、欄位、set方法或者配置方法,spring的依賴注入工具就可以對其進行自動裝配。意思是在我們嘗試從spring容器中獲取bean的時候,容器可以自動地進行建構函式注入、set注入。set方法可以看作是配置方法的特例,所以類比去理解即可。

原始碼:

@Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Autowired {

    /**
     * Declares whether the annotated dependency is required.
     * <p>Defaults to {@code true}.
     */
    boolean required() default true;

}

關於註解物件:

建構函式:對於任何給定的bean class 最多隻能有一個建構函式帶有此註解,指定建構函式在用作spring bean的時要自動裝配。這樣的建構函式不需要是public。

屬性:在呼叫任何配置方法之前,構造完bean之後,注入屬性。這樣的屬性不需要是public。

配置方法:配置方法是指可以有任意名稱和任意數量的引數的方法; 每個引數都將使用Spring容器中的匹配bean進行自動裝配。 Bean屬性setter方法實際上只是這種通用配置方法的一個特例。 這種配置方法不必是public的。

相關推薦

Spring註解@Autowired

使用@Autowired註解,標記類的建構函式、欄位、set方法或者配置方法,spring的依賴注入工具就可以對其進行自動裝配。意思是在我們嘗試從spring容器中獲取bean的時候,容器可以自動地進行建構函式注入、set注入。set方法可以看作是配置方法的特例,所以類比去理

Spring MVC中常用註解RequestMapping

SpringMVC和Struts2最大區別可能就是註解的使用。因為SpringMVC中可以實現在類這個層面上面配置資訊,也可以在方法層面上面配置資訊,既靈活又方便,不需要寫大量的配置檔案,也不需要寫大

Spring Boot HelloWorld

www repos lookup dex lns jar nap put epo SpringBoot介紹~<暫時假裝有> 配置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht

Spring MVC@RequestMapping Spring MVC@RequestMapping

轉自原文 Spring MVC之@RequestMapping 詳解 引言: 前段時間專案中用到了REST風格來開發程式,但是當用POST、PUT模式提交資料時,發現伺服器端接受不到提交的資料(伺服器端引數繫結沒有加 任何註解),查看了提交方式為application/json, 而且伺服器端通過requ

spring boot配置

spring boot支援的配置檔案 spring boot支援兩種型別的配置檔案,一種是傳統的預設配置檔案application.properties ,還有一種是現在被廣泛推薦使用的YAML檔案。書寫上properties是採用鍵值對的形式來表示,而YAML是以類似大綱的縮排形式,這

Spring MVC@RequestMapping

引言: 前段時間專案中用到了REST風格來開發程式,但是當用POST、PUT模式提交資料時,發現伺服器端接受不到提交的資料(伺服器端引數繫結沒有加任何註解),查看了提交方式為application/json, 而且伺服器端通過request.getReader() 打出的資料裡確實存在瀏覽器提交的資料。為

Spring MVC@ControllerAdvice

       對於@ControllerAdvice,我們比較熟知的用法是結合@ExceptionHand

spring註解事務@Transactional

事務註解方式: @Transactional 轉自:http://www.cnblogs.com/caoyc/p/5632963.html 當標於類前時, 標示類中所有方法都進行事物處理 , 例子: 1 @Transactional public class Tes

Spring JdbcTemplate使用

最近在專案中使用到了 Spring 的 JdbcTemplate, 中間遇到了好多坑, 所以花一些時間對 JdbcTemplate 的使用做了一個總結, 方便以後自己的檢視。文章中貼出來的API都是經過測試的, 可以放心大膽的拿去用。 概述 JdbcTemplate主要提供4種方法:  c

Spring註解@Autowired、@Qualifier、@Resource、@Value

前言 @Autowired、@Qualifier、@Resource、@Value四個註解都是用於注入資料的,他們的作用就和在xml配置檔案中的bean標籤中寫一個 1、先給出一個場景 講@Autowired註解前先給出一個場景: dao層程式碼 @Repository public class Accoun

(轉)javaSpring(IOC)註解裝配Bean

pos work 多個 public pre tor not 註解裝配 creat 在這裏我們要詳細說明一下利用Annotation-註解來裝配Bean。 因為如果你學會了註解,你就再也不願意去手動配置xml文件了,下面就看看Annotation的魅力所在吧。 先

spring @Transactional註解參數

正是 SQ com package don ted {} 說明 mda 事物註解方式: @Transactional 當標於類前時, 標示類中所有方法都進行事物處理 , 例子: @Transactional public class TestServiceBea

spring @Transactional註解參數(13)

基於接口 ack -a 事物 null span ports readonly 可見度 事物註解方式: @Transactional 當標於類前時, 標示類中所有方法都進行事物處理 , 例子: 1 @Transactional public class TestServ

Spring-boot入門配置

1.配置檔案 spring-boot預設有兩種配置檔案 appliation.properties appliation.yml 配置檔案預設放在src/main/resources目錄或者是類路徑/config下 配置檔案的作用:修改sprin

Spring Boot中使用MyBatis註解配置開發

Spring Boot中使用MyBatis註解配置詳解 原創   2018-04-03 宗野       Spring Boot 最近專案原因可能會繼續開始使用

Spring全家桶系列–SpringBootAOP

//本文作者:cuifuan //本文將收錄到選單欄:《Spring全家桶》專欄中 面向方面程式設計(AOP)通過提供另一種思考程式結構的方式來補充面向物件程式設計(OOP)。 OOP中模組化的關鍵單元是類,而在AOP中,模組化單元是方面。 準備工作 首先,使用AOP要在bu

spring的事務,註解@Transactional

事務管理是應用系統開發中必不可少的一部分。Spring 為事務管理提供了豐富的功能支援。 Spring 事務管理分為程式設計式和宣告式的兩種方式。 程式設計式事務指的是通過編碼方式實現事務,程式設計式事務管理使用TransactionTemplate或者直接使用底層的PlatformTransaction

JavaWeb-Spring註解大全與

可以通過該型別 status 物件顯式結束表單的處理,這相當於觸發 session 清除其中的通過@SessionAttributes 定義的屬性  請求處理方法返回值的可選型別 • void 此時邏輯檢視名由請求處理方法對應的 URL 確定,如以下的方法: @RequestMapping("/welc

SpringIoc01

Spring Ioc(Inversion of Control): 注入方式:1.屬性注入 <bean id="people2" class="com.tyd.entity.People"><property name="id" value="1" /&g

spring-boot-starter-logging logback常用配置標籤

logback 常用配置詳解(二) <appender> <appender>: <appender>是<configuration>的子節點,是負責寫日誌的元件。 <appender>有兩個必要