欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mybatis中特殊SQL的執(zhí)行的實(shí)現(xiàn)示例

 更新時(shí)間:2023年07月26日 09:05:06   作者:qq_55304388  
本文主要介紹了Mybatis中特殊SQL的執(zhí)行的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1、模糊查詢

//通過用戶名模糊查詢用戶信息
List<user> getUserByLike(@Param("mohu") String mohu);

這里給出三種寫法

<!--List<User> getUserByLike(@Param("mohu") String mohu);-->
    <select id="getUserByLike" resultType="User">
        <!--select * from t_user where username like '%${mohu}%'-->
        <!--select * from t_user where username like concat('%',#{mohu},'%')-->
        <!--使用最多-->
        select * from t_user where username like "%"#{mohu}"%"
    </select>
@Test
    public void testGetUserByLike(){
        SqlSession sqlSession= SqlSessionUtil.getSqlSession();
        SpecialSQLMapper mapper=sqlSession.getMapper(SpecialSQLMapper.class);
        List<User> list= mapper.getUserByLike("a");
        list.forEach(System.out::println);
    }

2、批量刪除

//批量刪除
    Integer deleteMoreUser(@Param("ids") String ids);

注意這里不能用#{},因?yàn)樗鼤?huì)自動(dòng)加上單引號(hào),會(huì)導(dǎo)致SQL語句變成 delete from t_user where id in(‘8,9’)

<!--Integer deleteMoreUser(@Param("ids") String ids);-->
    <delete id="deleteMoreUser">
        delete from t_user where id in(${ids})
    </delete>
@Test
    public void deleteMoreUser(){
        SqlSession sqlSession=SqlSessionUtil.getSqlSession();
        SpecialSQLMapper mapper=sqlSession.getMapper(SpecialSQLMapper.class);
        mapper.deleteMoreUser("8,9");
    }

3、動(dòng)態(tài)設(shè)置表名

//動(dòng)態(tài)設(shè)置表名,查詢所有的用戶信息
    List<User> getUserList(@Param("tablename") String tablename);

注意這里不能用#{},因?yàn)樗鼤?huì)自動(dòng)加上單引號(hào),會(huì)導(dǎo)致SQL語句查詢的表名多一個(gè)單引號(hào)

<!--List<User> getUserList(@Param("tablename") String tablename);-->
    <select id="getUserList" resultType="User">
        select * from ${tablename}
    </select>
@Test
    public void testGetUserList(){
        SqlSession sqlSession=SqlSessionUtil.getSqlSession();
        SpecialSQLMapper mapper=sqlSession.getMapper(SpecialSQLMapper.class);
        List<User> list=mapper.getUserList("t_user");
        list.forEach(System.out::println);
    }

4、添加功能獲取自增的主鍵

//添加用戶信息,并獲取自增的主鍵
    void insertUser(User user);

useGeneratedKeys:表示當(dāng)前添加功能使用自增的主鍵;
keyProperty:因?yàn)樵鰟h改有統(tǒng)一的返回值是受影響的行數(shù),因此只能將獲取的自增的主鍵放在傳輸?shù)膶?shí)體類類型的參數(shù)user對(duì)象的某個(gè)屬性中

<!--void insertUser(User user);-->
    <insert id="insertUser" useGeneratedKeys="true" keyProperty="id">
        insert into t_user values(null,#{username},#{password},#{age},#{gender},#{email})
    </insert>
@Test
    public void testInsertUser(){
        SqlSession sqlSession=SqlSessionUtil.getSqlSession();
        SpecialSQLMapper mapper=sqlSession.getMapper(SpecialSQLMapper.class);
        User user= new User(null,"xiaoming","123222",23,"男","123456@qq.com");
        mapper.insertUser(user);
        System.out.println(user);
    }

到此這篇關(guān)于Mybatis中特殊SQL的執(zhí)行的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Mybatis 特殊SQL執(zhí)行內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于Java實(shí)現(xiàn)空間濾波完整代碼

    基于Java實(shí)現(xiàn)空間濾波完整代碼

    空間濾波是一種采用濾波處理的影像增強(qiáng)方法。其理論基礎(chǔ)是空間卷積和空間相關(guān)。這篇文章主要介紹了基于Java的空間濾波代碼實(shí)現(xiàn),需要的朋友可以參考下
    2021-08-08
  • SpringBoot底層注解超詳細(xì)介紹

    SpringBoot底層注解超詳細(xì)介紹

    這篇文章主要介紹了SpringBoot底層注解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-09-09
  • SpringBoot測試之高級(jí)配置方式

    SpringBoot測試之高級(jí)配置方式

    這篇文章主要介紹了SpringBoot測試之高級(jí)配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • 引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法

    引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法

    這篇文章主要介紹了引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法,需要的朋友可以參考下
    2020-05-05
  • ShardingJdbc讀寫分離的BUG踩坑解決

    ShardingJdbc讀寫分離的BUG踩坑解決

    這篇文章主要為大家介紹了ShardingJdbc讀寫分離的BUG踩坑解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 詳解Spring Boot中Controller用法

    詳解Spring Boot中Controller用法

    Controller是SpringBoot里最基本的組件,他的作用是把用戶提交來的請(qǐng)求通過對(duì)URL的匹配,分配個(gè)不同的接收器,再進(jìn)行處理,然后向用戶返回結(jié)果。下面通過本文給大家介紹Spring Boot中Controller用法,需要的朋友參考下
    2017-05-05
  • mybatis 插件: 打印 sql 及其執(zhí)行時(shí)間實(shí)現(xiàn)方法

    mybatis 插件: 打印 sql 及其執(zhí)行時(shí)間實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猰ybatis 插件: 打印 sql 及其執(zhí)行時(shí)間實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • Java實(shí)現(xiàn)的圖片上傳工具類完整實(shí)例

    Java實(shí)現(xiàn)的圖片上傳工具類完整實(shí)例

    這篇文章主要介紹了Java實(shí)現(xiàn)的圖片上傳工具類,涉及java針對(duì)圖片文件的檢查、上傳、清除等相關(guān)操作技巧,需要的朋友可以參考下
    2017-10-10
  • Java利用Map實(shí)現(xiàn)計(jì)算文本中字符個(gè)數(shù)

    Java利用Map實(shí)現(xiàn)計(jì)算文本中字符個(gè)數(shù)

    這篇文章主要為大家詳細(xì)介紹了Java如何利用Map集合實(shí)現(xiàn)計(jì)算文本中字符個(gè)數(shù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-08-08
  • 教你用JAVA寫文本編輯器(四)

    教你用JAVA寫文本編輯器(四)

    這篇文章主要給大家介紹了關(guān)于用JAVA寫文本編輯器的相關(guān)資料,通過這篇文章你可以完整的知道利用JAVA寫文本編輯器的完整過程,需要的朋友可以參考下
    2021-11-11

最新評(píng)論