MyBatis獲取參數(shù)值的兩種方式詳解
MyBatis配置相關(guān)模板
1.核心配置文件的模板

2.映射文件模板

3.封裝SqlSessionUtils工具類

package com.atguigu.mybatis.utils;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
public class SqlSessionUtils {
public static SqlSession getSqlSession(){
SqlSession sqlSession = null;
try {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession(true);
} catch (IOException e) {
e.printStackTrace();
}
return sqlSession;
}
}MyBatis獲取參數(shù)值的兩種方式
- MyBatis獲取參數(shù)值的兩種方式:${}和#{}
- ${}本質(zhì)是字符串拼接,#{}的本質(zhì)是占位符賦值
- ${}使用字符串拼接的方式拼接sql,若為字符串類型或日期類型的字段進(jìn)行賦值時(shí),需要手動(dòng)加單引號(hào)。
- #{}使用占位符賦值的方式拼接sql,若為字符串類型或日期類型的字段進(jìn)行賦值時(shí),需要自動(dòng)加單引號(hào)。

1.單個(gè)字面量類型的參數(shù)
若mapper接口的方法參數(shù)為單個(gè)的字面量類型,此時(shí)可以使用${}和#{}以任意的名稱獲取參數(shù)值。${}需要手動(dòng)加引號(hào)
①在ParameterMapper接口上

②在ParameterMapper.xml上
用#{username}- username可任意替換

用’${username}’ - username可任意替換

③測(cè)試

2.多個(gè)字面量類型的參數(shù)
- 若mapper接口的方法參數(shù)是多個(gè)時(shí),此時(shí)MyBatis會(huì)自動(dòng)的將這些參數(shù)放在一個(gè)map集合中以arg0,arg1…為鍵,以參數(shù)為值或者以param1,param2為鍵,以參數(shù)為值
- 此時(shí)通過(guò)${}和#{}訪問(wèn)map集合的鍵會(huì)獲取對(duì)應(yīng)的值
①在ParameterMapper接口中

②在 ParameterMapper.xml配置類

③測(cè)試

3.map集合類型的參數(shù)
若map接口的方法參數(shù)為多個(gè),可以手動(dòng)創(chuàng)建map集合,通過(guò)#{}和${}訪問(wèn)map集合的鍵獲取對(duì)應(yīng)的值
①在ParameterMapper接口中

②在 ParameterMapper.xml配置類

③測(cè)試

4.實(shí)體類類型的參數(shù)
若mapper接口的方法參數(shù)是實(shí)體類對(duì)象,可以使用${}或#{}通過(guò)對(duì)象的屬性名獲取屬性值。
①在ParameterMapper接口中

②在 ParameterMapper.xml配置類

③測(cè)試

5.使用@Param標(biāo)識(shí)參數(shù)
可以通過(guò)@Param注解標(biāo)識(shí)mapper接口的方法參數(shù),此時(shí)參數(shù)會(huì)放在map集合中
①以@Param注解的value屬性值為鍵,參數(shù)值為值
②以param1,param2為鍵。以參數(shù)為值
2.通過(guò)#{}或${}訪問(wèn)map集合的鍵可以獲取對(duì)應(yīng)的值
①在ParameterMapper接口中

②在 ParameterMapper.xml配置類

③測(cè)試

到此這篇關(guān)于MyBatis獲取參數(shù)值的兩種方式詳解的文章就介紹到這了,更多相關(guān)MyBatis獲取參數(shù)值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mybatis教程之resultmap_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了mybatis教程之resultmap,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
JAVA?biginteger類bigdecimal類的使用示例學(xué)習(xí)
這篇文章主要為大家介紹了JAVA?biginteger類bigdecimal類的使用示例學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
Spring Boot集成Spring Cloud Security進(jìn)行安全增強(qiáng)的方法
Spring Cloud Security是Spring Security的擴(kuò)展,它提供了對(duì)Spring Cloud體系中的服務(wù)認(rèn)證和授權(quán)的支持,包括OAuth2、JWT等,這篇文章主要介紹了Spring Boot集成Spring Cloud Security進(jìn)行安全增強(qiáng),需要的朋友可以參考下2024-11-11
用java實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
詳解Spring Cloud Config采用Git存儲(chǔ)時(shí)兩種常用的配置策略
這篇文章主要介紹了詳解Spring Cloud Config采用Git存儲(chǔ)時(shí)兩種常用的配置策略,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
使用Java應(yīng)用程序添加或刪除 PDF 中的附件
當(dāng)我們?cè)谥谱鱌DF文件或者PPT演示文稿的時(shí)候,為了讓自己的文件更全面詳細(xì),就會(huì)在文件中添加附件,那么如何添加或刪除PDF中的附件呢,今天通過(guò)本文給大家詳細(xì)講解,需要的朋友參考下吧2023-01-01

