中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

(Java)Mybatis學(xué)習(xí)筆記(二)-創(chuàng)新互聯(lián)

前言

繼續(xù)學(xué)習(xí)MyBatis核心配置文件章節(jié),不負(fù)年華

成都創(chuàng)新互聯(lián)公司-成都網(wǎng)站建設(shè)公司,專注做網(wǎng)站、網(wǎng)站制作、網(wǎng)站營(yíng)銷推廣,國(guó)際域名空間,網(wǎng)站空間,網(wǎng)站托管、服務(wù)器租用有關(guān)企業(yè)網(wǎng)站制作方案、改版、費(fèi)用等問(wèn)題,請(qǐng)聯(lián)系成都創(chuàng)新互聯(lián)公司。MyBatis核心配置文件

核心配置文件中的 標(biāo)簽詳解

environments

在這里插入圖片描述

標(biāo)簽含義屬性拓展
environments配置多個(gè)連接數(shù)據(jù)庫(kù)的環(huán)境default:設(shè)置默認(rèn)使用的環(huán)境id無(wú)
environment配置多個(gè)連接數(shù)據(jù)庫(kù)的環(huán)境id:表示連接數(shù)據(jù)庫(kù)環(huán)境的唯一標(biāo)識(shí),不能重復(fù)無(wú)
transactionManager設(shè)置事務(wù)管理方式type=JDBC/MANAGEDJDBC:表示當(dāng)前環(huán)境中,執(zhí)行SQL時(shí),使用的是JDBC中原生的事務(wù)管理,事務(wù)的提交和回滾需要手動(dòng)處理MANAGED:被管理,例如Spring
dataSource配置數(shù)據(jù)源type=POOLED/UNPOOLED/JNDI :設(shè)置數(shù)據(jù)源的類型POOLED:表示使用數(shù)據(jù)庫(kù)連接池緩存數(shù)據(jù)庫(kù)連接UNPOOLED:表示不使用數(shù)據(jù)庫(kù)連接池JNDI:表示使用上下文中的數(shù)據(jù)庫(kù)連接
property數(shù)據(jù)庫(kù)連接相關(guān)配置name value無(wú)
properties

實(shí)際開(kāi)發(fā)中,習(xí)慣將數(shù)據(jù)源的配置信息單獨(dú)抽取成一個(gè)properties文件,然后引入

新建一個(gè)properties文件

在這里插入圖片描述

為什么要用Resource Bundle來(lái)創(chuàng)建properties文件,這是個(gè)問(wèn)題

看了官網(wǎng)的解釋,我有了那么一絲明悟

Resource Bundle 翻譯過(guò)來(lái) 資源包 或稱 資源束

2020.3版本時(shí)官網(wǎng)的釋義

在這里插入圖片描述
在這里插入圖片描述

用通俗的話來(lái)講,Resources目錄下用于存放配置文件,而部分配置文件可能文件特性相似(簡(jiǎn)單理解就是后綴名相同),就整合到一個(gè)目錄下,方便找尋和管理(這是個(gè)人淺薄的理解

在這里插入圖片描述

后綴名默認(rèn)為 properties
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

typeAliases

就算起個(gè)別名,也最好見(jiàn)名識(shí)義

在這里插入圖片描述
在這里插入圖片描述

報(bào)錯(cuò):元素類型為 “configuration” 的內(nèi)容必須匹配 “(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFactory?,plugins?,environments?,databaseIdProvider?,mappers?)”

意思是configuration中的標(biāo)簽要按上述順序書(shū)寫(xiě)

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

別名常以包為單位,將包以下所有的結(jié)果類型設(shè)置默認(rèn)的類型別名,即類名不區(qū)分大小寫(xiě)

mappers

錯(cuò)誤的建包示范

在這里插入圖片描述
在這里插入圖片描述
正確的建包示范
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

以包為單位引入映射文件

要求:
1.mapper接口所在的包要和映射文件所在的包一致
2.mapper接口要和映射文件的名字一致

MyBatis獲取參數(shù)值的兩種方式 搭建一個(gè)mybatis工程

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
pom文件中導(dǎo)入依賴

在這里插入圖片描述

pom中添加packaging標(biāo)簽

項(xiàng)目產(chǎn)生的構(gòu)件類型,例如jar、war、pom

項(xiàng)目打包類型:pom、jar、war

pom--------->父類型都為pom類型
jar--------->內(nèi)部調(diào)用或者是作服務(wù)使用
war--------->需要部署的項(xiàng)目

											

在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

核心配置文件模板

在這里插入圖片描述
在這里插入圖片描述

映射文件模板

在這里插入圖片描述
在這里插入圖片描述

封裝SqlSessionUtils工具類并測(cè)試功能

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

#{}和${}

MyBatis獲取參數(shù)值的兩種方式:${}#{}

  • ${}本質(zhì)字符串拼接
  • #{}本質(zhì)占位符賦值

${}使用字符串拼接的方式拼接sql,若為字符串類型或日期類型的字段進(jìn)行賦值時(shí),需要手動(dòng)加單引號(hào)

#{}使用占位符賦值的方式拼接sql,此時(shí)為字符串類型或日期類型的字段進(jìn)行賦值時(shí),可以自動(dòng)添加單引號(hào)

MyBatis獲取參數(shù)值的五種情況 1??單個(gè)字面量類型

mapper接口方法的參數(shù)為單個(gè)的字面量類型

遇見(jiàn)一個(gè)問(wèn)題,傳遞中文參數(shù)返回值為空(已解決)
在這里插入圖片描述
在這里插入圖片描述

在properties文件中的數(shù)據(jù)庫(kù)url后追加?useUnicode=true&characterEncoding=utf8

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述
通過(guò)測(cè)試知道大括號(hào)中的參數(shù)名可以任意,但建議與參數(shù)名保持一致
在這里插入圖片描述
在這里插入圖片描述
小結(jié):可以通過(guò)${}#{}以任意的名稱獲取參數(shù)值,但需要注意${}單引號(hào)問(wèn)題

2??多個(gè)字面量類型的參數(shù)

在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

mapper接口方法的參數(shù)為多個(gè)時(shí)

此時(shí)MyBatis會(huì)將這些參數(shù)放在一個(gè)map集合中,以兩種方式進(jìn)行存儲(chǔ)

  • a>以arg0,arg1…為鍵,以參數(shù)為值
  • b>以param1,param2…為鍵,以參數(shù)為值

因此只需要通過(guò)#{}${}以鍵的方式訪問(wèn)值即可,但需要注意${}的單引號(hào)問(wèn)題

3??map集合類型的參數(shù)

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

若mapper接口方法的參數(shù)有多個(gè)時(shí),可以手動(dòng)將這些參數(shù)放在一個(gè)map中存儲(chǔ)

只需通過(guò)#{}${}以鍵的方式訪問(wèn)值即可,但要注意${}的單引號(hào)

4??實(shí)體類類型的參數(shù)

mapper接口方法的參數(shù)是實(shí)體類類型的參數(shù)

只需通過(guò)${}#{}以屬性方式訪問(wèn)屬性值即可,但需要注意${}的單引號(hào)問(wèn)題

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

5??使用@Param標(biāo)識(shí)參數(shù)

mapper接口方法參數(shù)有多個(gè)

命名參數(shù)

使用@Param注解命名參數(shù)

此時(shí)MyBatis會(huì)將這些參數(shù)放在一個(gè)map集合中,以兩種方式進(jìn)行存儲(chǔ)

  • a>以@Param注解的值為鍵,以參數(shù)為值
  • b>以param1,param2…為鍵,以參數(shù)為值

因此只需通過(guò)#{}${}以鍵的方式訪問(wèn)值即可,但要注意單引號(hào)問(wèn)題

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

@Param源碼分析

聽(tīng)懂了一小小小部分,就是判斷存入的鍵是否是param1、param2,不是就以這種方式存儲(chǔ)(大概是這么個(gè)意思~)

在這里插入圖片描述
分析不下去了,太難了,太燒腦了~

小結(jié)

這章節(jié)學(xué)習(xí)的難度不算很大,也就有點(diǎn)小問(wèn)題,但都解決了,也就是源碼分析暫時(shí)解決不了,所以要好好學(xué),好好看,到時(shí)候?qū)W成了,再回過(guò)頭來(lái)看

簡(jiǎn)單回顧下

文章目錄
  • 前言
  • MyBatis核心配置文件
    • environments
    • properties
    • typeAliases
    • mappers
  • MyBatis獲取參數(shù)值的兩種方式
    • 搭建一個(gè)mybatis工程
    • 核心配置文件模板
    • 映射文件模板
    • 封裝SqlSessionUtils工具類并測(cè)試功能
    • #{}和${}
    • MyBatis獲取參數(shù)值的五種情況
      • :one:單個(gè)字面量類型
      • :two:多個(gè)字面量類型的參數(shù)
      • :three:map集合類型的參數(shù)
      • :four:實(shí)體類類型的參數(shù)
      • :five:使用@Param標(biāo)識(shí)參數(shù)
    • @Param源碼分析
  • 小結(jié)

繼續(xù)努力,趕往下一個(gè)知識(shí)點(diǎn)

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前題目:(Java)Mybatis學(xué)習(xí)筆記(二)-創(chuàng)新互聯(lián)
本文來(lái)源:http://www.rwnh.cn/article28/dghejp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、企業(yè)網(wǎng)站制作網(wǎng)站策劃、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
兴隆县| 安国市| 东乡| 乌海市| 青河县| 富川| 盐源县| 邻水| 枣强县| 恩施市| 沂源县| 德庆县| 钟祥市| 无锡市| 四子王旗| 玉环县| 郯城县| 体育| 时尚| 泾源县| 四平市| 秦皇岛市| 禹州市| 团风县| 扎囊县| 怀远县| 梁河县| 峨眉山市| 安顺市| 游戏| 会宁县| 浦江县| 读书| 调兵山市| 喀喇沁旗| 西昌市| 陇川县| 长治市| 四平市| 福建省| 青海省|