最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring入門基礎之依賴注入

 更新時間:2022年07月04日 09:48:11   作者:RAIN 7  
Idea中使用@Autowire注解會出現(xiàn)提示黃線,強迫癥患者看著很難受,使用構造器注入或者setter方法注入后可解決,下面我們一起來看看

一、構造器注入

在前幾節(jié)已經(jīng)做過了詳細的說明講解,我們先跳過

二、set注入

依賴注入

依賴: bean對象的創(chuàng)建以及管理都依賴于Spring IOC容器

注入: bean對象中的所有屬性,都有容器進行注入

在前面我們已經(jīng)見識過了 普通類型注入和 bean注入的方式,那么對于復雜類型List、數(shù)組類型、Map、Set屬性等怎么進行注入呢?

我們先提供一個包含各種類型的實體類

Student 類

package com.kuang.pojo;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
@Setter
@Getter
@ToString
public class Student {
    private String name;
    private Address address;
    private String[] books;
    private List<String> hobbies;
    private Map<String,String> card;
    private Set<String> games;
    private String wife;
    private Properties info;
}

Student類中包含的 Address類

package com.kuang.pojo;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
public class Address {
    private String address;
}

(1)基本類型注入

<!--            普通類型注入-->
        <property name="name" value="張三"/>

(2)引用類型(bean)注入

    <bean name="address" class="com.kuang.pojo.Address"/>
    <bean id="student" class="com.kuang.pojo.Student">
<!--        引用類型(bean)注入-->
        <property name="address" ref="address"/>
    <bean/>

(3)數(shù)組類型注入

<!--         數(shù)組類型注入  -->
        <property name="books">
            <array>
                <value>紅樓夢</value>
                <value>水滸傳</value>
                <value>西游記</value>
                <value>三國演義</value>
            </array>
        </property>

property 嵌套 array標簽 ,array標簽中又 通過 value標簽設置 數(shù)組中的值

(4)List類型注入

<!--Lits 屬性注入-->
        <property name="hobbies">
            <list>
                <value>打籃球</value>
                <value>彈吉他</value>
                <value>踢足球</value>
            </list>
        </property>

property 嵌套 list標簽 ,list標簽中又 通過 value標簽設置 list中的值

(5)null 空值注入

<!--        null注入-->
        <property name="wife">
            <null/>
        </property>

property 嵌套 null標簽,給指定屬性設置為null

(6)Map 類型注入

<!--        Map注入-->
        <property name="card">
            <map>
                <entry key="身份證" value="1111"/>
                <entry key="飯卡" value="22222"/>
            </map>
        </property>

property 嵌套 map標簽 ,map標簽中又 通過 entry標簽設置 key、value中的值

(7)Set 類型注入

<!--        Set注入-->
        <property name="games">
            <set>
                <value>塞爾達</value>
                <value>馬里奧</value>
            </set>
        </property>

property 嵌套 set標簽 ,set標簽中又 通過value標簽設置set中的值

(8)Properties 類型注入

<!--        properties注入-->
        <property name="info">
            <props>
                <prop key="url">111</prop>
                <prop key="username">root</prop>
                <prop key="password">22222</prop>
            </props>
        </property>

property 嵌套 props標簽 , props標簽中又 通過prop標簽設置值

查看注入之后的結果,正確拿到結果

三、其他方式注入

(1)導入約束

其他拓展的注入有p命名注入和c命名注入,但是不能直接使用都需要引入xml約束

p命名空間注入xml約束

       xmlns:p="http://www.springframework.org/schema/p"

c命名空間xml約束

       xmlns:c="http://www.springframework.org/schema/c"

p命名和c命名是對注入方式的一種格式化

  • p命名對應著 property 屬性注入
  • c命名對應著 construct-arg 構造參數(shù)注入

(2)p命名注入

    <bean name="address" class="com.kuang.pojo.Address"/>
    <bean id="student"
          class="com.kuang.pojo.Student"
          p:name="張三"
          p:address-ref="address"
    />

(3)c命名注入

    <bean name="address" class="com.kuang.pojo.Address"/>
    <bean id="student"
          class="com.kuang.pojo.Student"
          c:name="張三"
          c:address-ref="address"
    />

到此這篇關于Spring入門基礎之依賴注入的文章就介紹到這了,更多相關Spring依賴注入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Springboot項目參數(shù)校驗方式(Validator)

    Springboot項目參數(shù)校驗方式(Validator)

    本文介紹了如何在Spring Boot項目中使用`spring-boot-starter-validation`包和注解來實現(xiàn)請求參數(shù)校驗,主要介紹了校驗注解的使用方法、校驗失敗的異常捕獲以及`@Validated`的分組功能
    2025-02-02
  • RocketMQ?Namesrv架構工作原理詳解

    RocketMQ?Namesrv架構工作原理詳解

    這篇文章主要為大家介紹了RocketMQ?Namesrv架構工作原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • SpringBoot中的@Component注解源碼

    SpringBoot中的@Component注解源碼

    在SpringBoot中,@Component注解用于標識一個類為Bean,并由Spring進行管理,它需要配合@ComponentScan注解使用,后者負責掃描包含@Component的類,并進行自動裝配,本文給大家介紹SpringBoot中的@Component注解源碼,感興趣的朋友一起看看吧
    2024-01-01
  • java如何獲取request中json數(shù)據(jù)

    java如何獲取request中json數(shù)據(jù)

    這篇文章主要給大家介紹了關于java如何獲取request中json數(shù)據(jù)的相關資料,文中通過代碼示例以及圖文將獲取的方法介紹的非常詳細,對大家學習或者使用java具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • Java多維數(shù)組和Arrays類方法總結詳解

    Java多維數(shù)組和Arrays類方法總結詳解

    這篇文章主要介紹了Java多維數(shù)組和Arrays類方法總結詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java中集合和數(shù)組的排序方式小結

    Java中集合和數(shù)組的排序方式小結

    這篇文章主要介紹了Java中集合和數(shù)組的排序方式小結,本文講解了對數(shù)字數(shù)組、字符數(shù)組排序以及集合序列的排序,需要的朋友可以參考下
    2015-01-01
  • Spring?MVC請求處理流程和九大組件詳解

    Spring?MVC請求處理流程和九大組件詳解

    這篇文章主要介紹了Spring?MVC請求處理流程和九大組件,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-12-12
  • Mybatis執(zhí)行SQL命令的流程分析

    Mybatis執(zhí)行SQL命令的流程分析

    這篇文章主要介紹了Mybatis執(zhí)行SQL命令的流程分析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • Spring之SseEmitter實現(xiàn)讓你的進度條實時更新

    Spring之SseEmitter實現(xiàn)讓你的進度條實時更新

    Spring SseEmitter是一種實現(xiàn)服務器端推送事件(SSE)的機制,支持單向通信,適用于實時數(shù)據(jù)傳輸需求,通過代碼示例和應用場景分析,展示了如何在服務端和客戶端使用SseEmitter進行實時數(shù)據(jù)推送
    2025-02-02
  • Java中正則表達式匹配過程實例詳解

    Java中正則表達式匹配過程實例詳解

    正則匹配即是在給定字符串中查找符合正則表達式的字符,下面這篇文章主要給大家介紹了關于Java中正則表達式匹配過程的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10

最新評論

萨嘎县| 定州市| 老河口市| 思南县| 五家渠市| 内丘县| 新乐市| 玛沁县| 宁强县| 三江| 新龙县| 噶尔县| 郁南县| 镇沅| 泽普县| 昆明市| 合肥市| 翼城县| 汉中市| 齐河县| 安图县| 南木林县| 安宁市| 伊金霍洛旗| 那曲县| 永川市| 南陵县| 安岳县| 深泽县| 松潘县| 中卫市| 嘉祥县| 栾城县| 东台市| 龙山县| 福海县| 咸宁市| 且末县| 龙口市| 若尔盖县| 读书|