国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Mybatis】XML映射文件

這篇具有很好參考價(jià)值的文章主要介紹了【Mybatis】XML映射文件。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

?11.3XML映射文件

????????1.select

?????????2.insert、update、delete

????????3.Sql?

????????4.parameters(參數(shù))?

????????5.resultMap

????????6.resultMap 使用示例?

????????(1)在先前創(chuàng)建的數(shù)據(jù)庫stu中創(chuàng)建表student 2,并插入若干條數(shù)據(jù),代碼如下:

????????(2)創(chuàng)建工程mybatis_ResultMap_demo。?

????????(3)創(chuàng)建實(shí)體對象映射數(shù)據(jù)庫表。?

????????(4)創(chuàng)建映射接口和映射文件。

????????(5)測試。


?11.3XML映射文件

????????文章來源地址http://www.zghlxwxcb.cn/news/detail-629332.html

????????xml和dtd 部分是必須填寫且不需要配置的部分每次使用時(shí),只需要將這部分復(fù)制到文件頂部即可。

????????mapper 元素是整個映射文件的容器,所有的SQL映射都包含在這個元素中,mapper本身有一個參數(shù)namespace,即命名空間這個命名空間就是文件所對應(yīng)的接口文件的Java類只有當(dāng)這個命名空間被配置時(shí),才可以直接通過訪問Java接口的方法實(shí)現(xiàn)SOL調(diào)用。

????????映射器是MyBatis最復(fù)雜且最重要的組件它由一個接口加上XML文件(或者注解)組成。在映射器中可以配置參數(shù)、SOL 語句、存儲過程、緩存等內(nèi)容,并且通過簡易的映射規(guī)則映射到指定的POJO或者其他對象上,映射器能有效消除JDBC底層的代碼。

????????MyBatis的映射器也可以使用注解完成,但可讀性較差,企業(yè)中應(yīng)用不廣,官方亦不推薦使用。

????????1.select

????????

查詢語句是 MyBatis 中最常用的元素之一,多數(shù)應(yīng)用也都是查詢比修改要頻繁。對每個插入、更新或刪除操作,通常對應(yīng)多個查詢操作。這是 MyBatis 的基本原則之一,也是將焦點(diǎn)和精力放到查詢和結(jié)果映射的原因。對簡單類別的查詢元素是非常簡單的。例如:

<select id="selectPerson" parameterType="int"?resultType="hashmap">

????????SELECT *FROM PERSON WHERE ID=#{id}

</select>

????????這個語句被稱為selectPerson,使用一個int(或Integer)類型的參數(shù),并返回一個HashMap類型的對象,其中的鍵是列名,值是列對應(yīng)的值。

????????注意參數(shù)標(biāo)識?#{id},其告訴?MyBatis創(chuàng)建一個PreparedStatement (預(yù)處理語)參數(shù)使用JDBC,這樣的一個參數(shù)在SOL中會由一個“?”來標(biāo)識,并被傳遞到一個新的預(yù)處理語句中,類似于以下的JDBC代碼(不是MyBatis的代碼):

String selectPerson ="SELECT* FROM PERSON WHEREID=?";

PreparedStatement ps = conn.prepareStatement(selectPerson); ps.setInt(1,id);

????????當(dāng)然,這需要很多單獨(dú)的JDBC 的代碼來提取結(jié)果并將它們映射到對象實(shí)例中,這就是MyBatis 節(jié)省時(shí)間的原因。我們需要深入了解參數(shù)和結(jié)果映射。select 元素有很多屬性允許用戶配置,以決定每條語句的作用細(xì)節(jié)。關(guān)于select元素主要屬性的描述參見表11-2。

????????????????????????????????????????表11-2select元素的主要屬性描述

屬性

描述

id

在命名空間中唯一的標(biāo)識符,可以被用來引用這條語句

parameterType

將會傳入這條語句的參數(shù)類的完全限定名或別名。這個屬性是可選的,因?yàn)?MyBatis 可以通過TypeHandler 推斷出具體傳入語句的參數(shù),默認(rèn)值為unset

resultMap

外部resultMap的命名引用。結(jié)果集的映射是MyBatis 最強(qiáng)大的特性若能對其有一個很好地理解則許多復(fù)雜映射的情形都能迎刃而解??梢允褂胷esultMap或resultType,但不能同時(shí)使用

flushCache

如果設(shè)置為true,則任何時(shí)候只要語句被調(diào)用,都會導(dǎo)致本地緩存和二級緩存被清空,默認(rèn)值為false

useCache

如果設(shè)置為true,則將會導(dǎo)致本條語句的結(jié)果被二級緩存,select元素默認(rèn)值為true

timeout

這個設(shè)置是在拋出異常之前,驅(qū)動程序等待數(shù)據(jù)庫返回請求結(jié)果的秒數(shù)。默認(rèn)值為unset(依賴驅(qū)動)

fetchSize

這是嘗試影響驅(qū)動程序每次批量返回的結(jié)果行數(shù)和這個設(shè)置值相等。默認(rèn)值為 unset(依賴驅(qū)動)

statementType

值為STATEMENT、PREPARED或CALLABLE之一。這會讓MyBatis分別使用JDBC中的

Statement、PreparedStatement 或CallableStatement,默認(rèn)值為PREPARED

resultSetType

值為FORWARDONLY、SCROLL SENSITIVE 或SCROLL INSENSITIVE 之一默認(rèn)值為 umset(依賴驅(qū)動),是結(jié)果集的類型

databaseld

如果配置了databaseIdProvider,則MyBatis會加載所有的不帶databaseId 或匹配當(dāng)前databaseId語句;如果帶或者不帶databaseId的語句都有,則不帶的會被忽略

?????????2.insert、update、delete

????????數(shù)據(jù)操縱語句 insert、update 和 delete 在它們的實(shí)現(xiàn)中非常相似。

????????

<insert?Id=“insertAuthor”?parameterType=“domain.blogAuthor”?flushCache=“true”?

statementType=“PREPARED”keyProperty=“”keyColumn=“”useGeneratedKeys=“”

utimeout=“20”>

<update?id=“updateAuthor”?parameterType=“domain.blog.Author”?flushCache=“true”

statementType=“PREPARED” timeout=“20”>

<delete?id=“deleteAuthorr”?parameterType=“domain.blog.Author”?flushCache=“true”

statementType=“PREPARED” timeout=“20”>

?????????

????????insert、update和delete元素的主要屬性描述如表11-3所示

????????表11-3 insert、update和delete 元素的主要屬性描述

????????下面是insert、update和delete語句的示例

屬性

描述

id

命名空間中的唯一標(biāo)識符,可被用來代表這條語句

parameterType

將要傳入語句的參數(shù)的完全限定類名或別名。這個屬性是可選的,因?yàn)?MyBatis 可以通過TypeHandler推斷出具體傳入語句的參數(shù),默認(rèn)值為unset

parameterMap

STATEMENT、PREPARED或CALLABLE之一。這會讓MyBatis分別使用StatementPreparedStatement或CallableStatement,默認(rèn)值為PREPARED

flushCache

將其設(shè)置為 tue,任何時(shí)候只要語句被調(diào)用,都會導(dǎo)致本地緩存和二級緩存都被清空,默認(rèn)值為true(對應(yīng)插入、更新和刪除語句)

statementType

STATEMENT、PREPARED或CALLABLE之一。這會讓MyBatis 分別使用 Statement?PreparedStatement或CallableStatement,默認(rèn)值為PREPARED

useGeneratedKeys

(僅對insert和update 有用)這會令MyBatis 使用JDBC的getGeneratedKeys 方法來獲取由數(shù)據(jù)庫內(nèi)部生成的主鍵(如像MySOL和SOLServer 這樣的關(guān)系數(shù)據(jù)管理系統(tǒng)的自動遞增字段),默認(rèn)值為false

keyProperty

(僅對insert 和update 有用)唯一標(biāo)記一個屬性,MyBatis 會通過 getGeneratedKeys的返回值或者通過 insert 語的 selectKey 子元素設(shè)置其鍵值,默認(rèn)為 unset。如果希望得到多個生成的列,則也可以是逗號分隔的屬性名稱列表

keyColumn

(僅對msert和update 有用)通過生成的鍵值設(shè)置表中的列名這個設(shè)置在某些數(shù)據(jù)庫(如PostgreSQL)中是必需的,當(dāng)主鍵列不是表中的第一列時(shí)需要設(shè)置。如果希望得到多個生成的列,則也可以是逗號分隔的屬性名稱列表

????????下面是insert、update和delete語句的示例。

????????

<insert id=“addStudent” parameterType=“student”

insert into

student(sno,name,sex,age,deptno)

values(#{sno}#{name},#{sex},#{age},#{dept_no})

</insert>

<update id=“updateStudent” parameterType=“student”>

update student set name

=#{name},sex=#{sex},age=#{lage},dept_no=#{dept_no}

where sno=#{sno}

</update>

<delete id=“deletestudent” uparameterType=“String”>

delete from student

where sno=#{sno}

</delete>

????????3.Sql?

????????這個元素可以被用來定義可重用的 SOL代碼段,可以包含在其他語句中。例如:

????????

<sql id=“userColumns”>

${alias}.id,${alias}.username,${alias}.password

</sq1>

????????這個SQL片段可以被包含在其他語句中。例如:

????????

<select id=“selectUsers”?resultType=“map”>

Select

<include>refid=“userColumns”><property name=“alias”?value=“t1”/></include>,

</select>

????????4.parameters(參數(shù))?

????????在MyBatis中,參數(shù)是非常強(qiáng)大的元素。類似于之前的語句,簡單參數(shù)示例如下。

? ? ? ?

<select id=“selectUsers” parameterType=“int”resultType="User”>

select id,username,password from users where id= #{id}

</select>

????????這個示例說明了一個非常簡單的命名參數(shù)映射。參數(shù)類型被設(shè)置為int,這里的參數(shù)名是id,也可以是其他名稱。參數(shù)為簡單數(shù)據(jù)類型的,都與此類似。以下示例中參數(shù)類型是一個對象,MyBatis的處理方式不同于簡單數(shù)據(jù)類型。

<insert id="insertUser"parameterType="User">

Insert into users(id,username,password)

values(#{id},#{username},#{password})

</insert>

????????如果User類型的參數(shù)對象傳遞到了語句中,則id、userame和password 屬性將會被查找,它們的值就會被傳遞到預(yù)處理語句的參數(shù)中。?

????????5.resultMap

???????resultMap是映射中最復(fù)雜也是最強(qiáng)大的元素,用來描述如何從數(shù)據(jù)庫結(jié)果集中來加載對象。resultMap 定義的主要是一個結(jié)果集的映射關(guān)系,也就是SOL到Java Bean 的映射關(guān)系定義。

????????下面是簡單映射語句的示例,但沒有明確的resultMap。例如:

????????

<select id=“selectUsers” resultType=“map”>

select id,username, hashedPassword from some_table where id = #{id}

</select>

????????resultType=“map”表示返回的數(shù)據(jù)是一個Map集合(使用列名作為key列值作為value)。雖然數(shù)據(jù)被封裝成Map集合返回,但是Map ”集合并不能很好地描述一個領(lǐng)域模型??梢允褂肑avaBeans或POJOs來作為領(lǐng)域模型描述數(shù)據(jù)MyBatis對兩者都支持來看下面這個JavaBean:

????????


public class User {

    private int id;
    private String username;
    private String hashedPassword;
    public int setId(int id) {
        This.id=id;
    }
    public void getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username=username;
    }
    public String getHashedPassword() {
        return hashedPassword;
    }
    public void setHashedPassword(String hashedPassword) {
        this.hashedPassword=hashedPassword;
    }
}

?????????基于JavaBean的規(guī)范,上面這個類有3個屬性:id、username和hashedPassword。這些在select語句中會精確匹配到列名。

????????這樣的一個JavaBean可以被映射到結(jié)果集,就像映射到HashMap一樣簡單。

????????

<select id=“selectUsers” parameterType=“int” resultType=“com.someapp.model.User”>

select id,username,hashedPassword from some table where id = #{id}

</select>

????????以下使用了類型別名,使用它們時(shí)可以不輸入類的全路徑。例如:

?????????

<!--在XML配置文件中-->

<typeAlias type=“com.someapp,model.User”?alias=“User”/>

<!--在SOL映射的XML文件中-->

<select id=“selectUsers” parameterType=“int”resultType=“User”>

select id,username hashedPassword from some table where id = #{id}

</select>

?????????在這些情況下,MyBatis會在幕后自動創(chuàng)建一個resultMap,基于屬性名來映射列到JavaBean 的屬性上。如果列名沒有精確匹配,則可以在列名上使用 select 字句的別名(一個標(biāo)準(zhǔn)的SOL特性)來匹配標(biāo)簽。例如:

????????

<select id=“selectUsers”?parameterType=“int”?resultType=“User”>

select

??user_id as “id”,

??user_name as “userName”,

??hashed_password as “hashedPassword”

from some_table

where id = #{id}

</select>

????????resultMap最常見的使用方式如下所示,這也是解決列名不匹配的另外一種方式。

????????

<resultMap id=“userResultMap”?type= “User”>

<id property= “id”?column= “user_id”?/>

<result property= “username”?column= “user_name”?/>

<result property= “password”?column= “hashed_password”?/>

</resultMap>

????????引用此語句時(shí)使用resultMap 屬性即可(注意,這里去了resultType屬性)。例如:

????????

<select id= “selectUsers”?parameterType= “int”?resultMap= “userResultMap”>

select user_id, user_name, hashed_password from some_table where id=#{id}

</select>

????????6.resultMap 使用示例?

????????(1)在先前創(chuàng)建的數(shù)據(jù)庫stu中創(chuàng)建表student 2,并插入若干條數(shù)據(jù),代碼如下:

????????

DROP TABLE IF EXISTS `student_2`;

CREATE TABLE `student_2` (

`stu_sno` varchar(100) NOT NULL DEFAULT '',

`stu_name` varchar(100) NOT NULL,

`stu_sex` varchar(8) DEFAULT NULL,

`stu_age` int(3) DEFAULT NULL,

`stu_dept_no` varchar(60) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `student_2` VALUES ('20231505', 'Marry', '女', '18', '260');

INSERT INTO `student_2` VALUES ('20231506', '王寶寶', '男', '22', '2602');

INSERT INTO `student_2` VALUES ('20231508', '李勇', '男', '20', '2605');

INSERT INTO `student_2` VALUES ('20231509', '劉娟', '女', '19', '2605');

????????(2)創(chuàng)建工程mybatis_ResultMap_demo。?

????????在idea 中創(chuàng)建Maven Project,在“GroupID”文本框中輸入“com.mialab”,在“ArtifactID”文本框中輸入“mybatis_ResultMap_demo”。最終完成的mybatis_ResultMap_demo工程目錄及文件如圖11-4所示,student2初始表數(shù)據(jù)如圖11-5所示。

????????【Mybatis】XML映射文件,spring系列,tomcat,java,開發(fā)語言

?????????????????????????????????????????????????圖11-4?mybatis_ResultMap_demo工程目錄及文件

????????【Mybatis】XML映射文件,spring系列,tomcat,java,開發(fā)語言

????????????????????????????????????????????????????????圖11-5?student2表中的數(shù)據(jù)

????????(3)創(chuàng)建實(shí)體對象映射數(shù)據(jù)庫表。?

????????Student對象用于映射student _2 表,Student.java 主要代碼如下(此處get方法、set方法和toString方法略:

????????

public class Student {
	private String sno;
	private String name;
	private String sex;
	private int age;
	private String dept_no;
   ...
}

????????(4)創(chuàng)建映射接口和映射文件。

????????接口StudentMapper.java的主要代碼如下:

????????

public interface StudentMapper {
	public List<Student> getSudentAll();
}

????????映射文件StudentMapper.xml的主要代碼如下:

????????

<mapper namespace="com.mialab.mybatis_ResultMap_demo.mapper.StudentMapper">
	<resultMap id="studentResultMap" type="student">
		<id property="sno" column="stu_sno" />
		<result property="name" column="stu_name" />
		<result property="sex" column="stu_sex" />
		<result property="age" column="stu_age" />
		<result property="dept_no" column="stu_dept_no" />
	</resultMap>

	<select id="getSudentAll" resultMap="studentResultMap">
		select * from student_2
	</select>
</mapper>

????????

????????這里column屬性表示數(shù)據(jù)庫表的列名,property 表示數(shù)據(jù)庫列映射到返回類型的屬性。<resultMap id=“studentResultMap”type=“student”>中的id 是resultMap 的唯一標(biāo)識符,type則表示 resultMap的實(shí)際返回類型。“student”是類型別名,表示的是“com.mialab.mybatis_ResultMap_demo.domain.Student", 在mybatis-config.xml中有聲明。

????????<id property="sno" column="stu_ sno" />中的id表示這個對象的主鍵(或者唯一標(biāo)識),property表示POJO的屬性名稱,column 表示數(shù)據(jù)庫表的列名。這樣,POJO就和數(shù)據(jù)庫SQL的結(jié)果一一對應(yīng)起來了 。

????????(5)測試。

????????main方法的主要測試代碼如下:

StudentMapper mapper = session.getMapper(StudentMapper.class);
List<Student> stu_list = mapper.getSudentAll();
for(Student stu:stu_list) {
	//System.out.println(stu);
	log.info(stu);
}

????????運(yùn)行ResultMap_ Main 的main方法,控制臺顯示內(nèi)容如下:

????????

DEBUG [main] - ==>  Preparing: select * from student_2 
DEBUG [main] - ==> Parameters: 
DEBUG [main] - <==      Total: 4
 INFO [main] - Student [sno=20231505, name=Marry, sex=女, age=18, dept_no=260]
 INFO [main] - Student [sno=20231506, name=王寶寶, sex=男, age=22, dept_no=2602]
 INFO [main] - Student [sno=20231508, name=李勇, sex=男, age=20, dept_no=2605]
 INFO [main] - Student [sno=20231509, name=劉娟, sex=女, age=19, dept_no=2605]

到了這里,關(guān)于【Mybatis】XML映射文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • MyBatis-XML映射文件

    MyBatis-XML映射文件

    規(guī)范 XML映射文件的名稱與Mapper接口名稱一致(EmpMapper對應(yīng)EmpMpper.xml),并且將XML映射文件和Mapper接口放置在相同包下(同包同名) ??? 在maven項(xiàng)目結(jié)構(gòu)中所有的配置文件都在resources目錄之下,因此要在該目錄下創(chuàng)建Mapper接口相同的文件目錄,注意在創(chuàng)建目錄時(shí)要使用 / 來

    2024年02月13日
    瀏覽(35)
  • MyBatis的使用(XML映射文件)

    MyBatis基于注解開發(fā)簡單便捷,但是弊端是失去SQL語句的靈活性,不能根據(jù)實(shí)際情況產(chǎn)生不同的SQL語句 MyBatis除了支持注解開發(fā)以外,還支持一種開發(fā)方式:XML映射文件,將SQL語句寫到XML映射文件中,基于更多種的選擇可以讓SQL變得更加靈活 1.開發(fā)方式 1.和基于注解開發(fā)方式一

    2024年02月08日
    瀏覽(25)
  • mybatis(mybatis-plus)映射文件(XML文件)中特殊字符轉(zhuǎn)義

    XML 文件在解析時(shí)會將五種特殊字符進(jìn)行轉(zhuǎn)義,當(dāng)不希望語法被轉(zhuǎn)義時(shí),就需要進(jìn)行特別處理,參考HTML字符轉(zhuǎn)義規(guī)范Myabtis 中五個特殊字符 原始符號 符號含義 大于 小于 and \\\" 英文雙引號 ’ 英文單引號 原始符號 轉(zhuǎn)義字符 gt lt amp \\\" quot ’ apos

    2024年02月10日
    瀏覽(35)
  • MyBatis Plus Mapper.xml映射文件常用標(biāo)簽<if>、<foreach>、#{}、${}等

    一、判斷 Integer、Long?等常數(shù)類參數(shù) 注意:判斷常數(shù)類參數(shù),只能判斷 != null,不能判斷 != \\\'\\\'?否則判斷不會生效 二、判斷 String?字符串類參數(shù) 注意:判斷字符串類參數(shù)可以判斷?!= \\\'\\\' 三、判斷參數(shù)值與指定的值,是否相等或不相等 注意: 1、判斷 Integer、Long?等常數(shù)類型等于

    2024年02月09日
    瀏覽(21)
  • 系列五、映射文件xxxMapper.xml

    系列五、映射文件xxxMapper.xml

    mapper映射文件是mybatis中最重要的部分,涉及到的細(xì)節(jié)也非常多。 表示輸入?yún)?shù)的類型。例如: mybatis中,當(dāng)我們在xxxMapper.xml中引用變量時(shí),默認(rèn)使用的是 # ,如上所示,但是除了 # 之外,我們也可以使用 $ 來應(yīng)用變量,如下所示: select id=\\\"getUserById\\\" parameterType=\\\"integer\\\" result

    2024年02月06日
    瀏覽(21)
  • MyBatis XML 映射文件中的 SQL 語句可以分為動態(tài)語句和靜態(tài)語句

    目錄 靜態(tài)查詢: 動態(tài)查詢: 靜態(tài)更新: 動態(tài)更新: 靜態(tài)刪除: 動態(tài)刪除: 動態(tài)語句和靜態(tài)語句在 MyBatis 中的作用如下: 靜態(tài)查詢: 靜態(tài)查詢是指在 SQL 語句中執(zhí)行固定的查詢操作,查詢的條件和內(nèi)容是預(yù)先確定的,不會隨著用戶輸入或其他條件的改變而改變。以下是一

    2024年01月18日
    瀏覽(35)
  • 系列四、全局配置文件mybatis-config.xml

    系列四、全局配置文件mybatis-config.xml

    mybatis全局配置中的文件非常多,主要有如下幾個:? properties(屬性) settings(全局配置參數(shù)) typeAliases(類型別名) typeHandlers(類型處理器) objectFactory(對象工廠) plugins(插件) environments(環(huán)境集合屬性對象) environment(環(huán)境集合屬性子對象) transactionManager(事務(wù)管理

    2024年02月06日
    瀏覽(29)
  • 【Spring 篇】深入探討MyBatis映射文件中的動態(tài)SQL

    【Spring 篇】深入探討MyBatis映射文件中的動態(tài)SQL

    MyBatis,這個名字在Java開發(fā)者的世界中猶如一道光芒,照亮著持久層操作的道路。而在MyBatis的映射文件中,動態(tài)SQL則是一個讓人愛-hate的存在。有時(shí)候,你感嘆它的靈活性,有時(shí)候,你可能會為它的繁瑣而頭痛。但別擔(dān)心,我們將在本文中一起揭開動態(tài)SQL的神秘面紗,帶你領(lǐng)

    2024年01月24日
    瀏覽(36)
  • MyBatis XML映射處理CLOB和BLOB類型

    Mybatis的MapperXML映射文件應(yīng)該處理數(shù)據(jù)庫字段類型為CLOB和BLOB類型的數(shù)據(jù)呢?首先我們先看下CLOB和BLOB這兩種數(shù)據(jù)類型的介紹。 使用Mybatis時(shí)涉及到兩種特殊類型的處理,分別是Blob(Binary Large Object)和Clob(Character Large Object)。Blob表示二進(jìn)制大對象字段,而Clob則表示大字符對象

    2024年02月12日
    瀏覽(13)
  • 【spring源碼系列-03】xml配置文件啟動spring時(shí)refresh的前置工作

    【spring源碼系列-03】xml配置文件啟動spring時(shí)refresh的前置工作

    Spring源碼系列整體欄目 內(nèi)容 鏈接地址 【一】spring源碼整體概述 https://blog.csdn.net/zhenghuishengq/article/details/130940885 【二】通過refresh方法剖析IOC的整體流程 https://blog.csdn.net/zhenghuishengq/article/details/131003428 【三】xml配置文件啟動spring時(shí)refresh的前置工作 https://blog.csdn.net/zhenghuishen

    2024年02月08日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包