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,若為字符串類型或日期類型的字段進行賦值時,需要手動加單引號。
- #{}使用占位符賦值的方式拼接sql,若為字符串類型或日期類型的字段進行賦值時,需要自動加單引號。

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

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

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

③測試

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

②在 ParameterMapper.xml配置類

③測試

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

②在 ParameterMapper.xml配置類

③測試

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

②在 ParameterMapper.xml配置類

③測試

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

②在 ParameterMapper.xml配置類

③測試

到此這篇關(guān)于MyBatis獲取參數(shù)值的兩種方式詳解的文章就介紹到這了,更多相關(guān)MyBatis獲取參數(shù)值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mybatis 實現(xiàn)一個搜索框?qū)Χ鄠€字段進行模糊查詢
這篇文章主要介紹了Mybatis 實現(xiàn)一個搜索框?qū)Χ鄠€字段進行模糊查詢,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
SpringBoot項目實現(xiàn)短信發(fā)送接口開發(fā)的實踐
本文主要介紹了SpringBoot項目實現(xiàn)短信發(fā)送接口開發(fā)的實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10
Java cookie和session會話技術(shù)介紹
session的工作原理和cookie非常類似,在cookie中存放一個sessionID,真實的數(shù)據(jù)存放在服務(wù)器端,客戶端每次發(fā)送請求的時候帶上sessionID,服務(wù)端根據(jù)sessionID進行數(shù)據(jù)的響應(yīng)2023-04-04

