最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MyBatis動態(tài)SQL foreach標簽實現(xiàn)批量插入的方法示例

 更新時間:2020年06月15日 14:52:38   作者:平凡的L同學  
這篇文章主要介紹了MyBatis動態(tài)SQL foreach標簽實現(xiàn)批量插入的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

需求:查出給定id的記錄:

<select id="getEmpsByConditionForeach" resultType="comtestbeansEmployee"> 
    SELECT * FROM tb1_emplyee WHERE id IN 
    <foreach collection="list" item="item_id" separator="," open="(" close=")"> 
      #{item_id} 
    </foreach> 
</select> 

關于foreach標簽,有幾個屬性應該注意一下:

  • collection:指定要遍歷的集合: 
  • list類型的參數(shù)會特殊處理封裝在map中,map的key就叫l(wèi)ist 
  • item:將當前遍歷出的元素賦值給指定的變量 
  • separator:每個元素之間的分隔符 
  • open:遍歷出所有結(jié)果拼接一個開始的字符 
  • close:遍歷出所有結(jié)果拼接一個結(jié)束的字符 
  • index:索引。遍歷list的時候是index就是索引,item就是當前值 
  • 遍歷map的時候index表示的就是map的key,item就是map的值 
  • #{變量名}就能取出變量的值也就是當前遍歷出的元素 

測試方法:

@Test 
  public void testDynamicSqlTest() throws IOException{ 
    SqlSessionFactory sqlSessionFactory = getSqlSessionFactory(); 
    //1、獲取到的SqlSession不會自動提交數(shù)據(jù) 
    SqlSession openSession = sqlSessionFactoryopenSession(); 
    try 
    { 
        EmployeeMapperDymanicSQL mapper=openSessiongetMapper(EmployeeMapperDymanicSQLclass); 
        /*Employee employee=new Employee(1,"lili",null,"1");*/ 
        List<Employee> emps=mappergetEmpsByConditionForeach(ArraysasList(1,2,3,4)); 
        for (Employee e:emps){ 
          Systemoutprintln(e); 
        } 
 
    } 
    finally { 
      openSessionclose(); 
    } 
  } 

foreach標簽也可以實現(xiàn)實現(xiàn)批量插入(刪除)數(shù)據(jù):

這里以批量插入數(shù)據(jù)為例:

<insert id="addEmps"> 
    INSERT INTO tb1_emplyee(last_name,email,gender,d_id) 
    VALUES  
    <foreach collection="emps" item="emp" separator=","> 
      (#{emplastName},#{empemail},#{empgender},#{empdeptid}) 
    </foreach> 
</insert> 

對應的接口:

public void addEmps(@Param("emps")List<Employee> emps); 

測試方法

@Test 
  public void testBatchSave() throws IOException{ 
    SqlSessionFactory sqlSessionFactory = getSqlSessionFactory(); 
    //1、獲取到的SqlSession不會自動提交數(shù)據(jù) 
    SqlSession openSession = sqlSessionFactoryopenSession(); 
    try 
    { 
      EmployeeMapperDymanicSQL mapper=openSessiongetMapper(EmployeeMapperDymanicSQLclass); 
      List<Employee> emps=new ArrayList<Employee>(); 
      empsadd(new Employee(null,"Eminem","Eminem@com","1",new Department(1))); 
      empsadd(new Employee(null,"2Pac","2Pac@com","1",new Department(1))); 
      mapperaddEmps(emps); 
      openSessioncommit(); 
    } 
    finally { 
      openSessionclose(); 
    }  
  } 

到此這篇關于MyBatis動態(tài)SQL foreach標簽實現(xiàn)批量插入的方法示例的文章就介紹到這了,更多相關MyBatis動態(tài)SQL foreach批量插入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解Java Cglib動態(tài)代理

    詳解Java Cglib動態(tài)代理

    這篇文章主要介紹了Java Cglib動態(tài)代理的相關資料,幫助大家更好的理解和學習Java代理,感興趣的朋友可以了解下
    2020-08-08
  • Java中如何動態(tài)創(chuàng)建接口的實現(xiàn)方法

    Java中如何動態(tài)創(chuàng)建接口的實現(xiàn)方法

    這篇文章主要介紹了Java中如何動態(tài)創(chuàng)建接口的實現(xiàn)方法的相關資料,需要的朋友可以參考下
    2017-09-09
  • java方法及this關鍵字原理分析詳解

    java方法及this關鍵字原理分析詳解

    本篇文章主要講解了對java方法和this關鍵字的用法及原理分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2021-10-10
  • java實現(xiàn)貪吃蛇小游戲

    java實現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細介紹了java實現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • Mybatis參數(shù)處理的幾種方法小結(jié)

    Mybatis參數(shù)處理的幾種方法小結(jié)

    在Mybatis中如何處理參數(shù)是一個非常重要的環(huán)節(jié),本文將詳細介紹 Mybatis 的參數(shù)處理機制,包括傳入?yún)?shù)和返回參數(shù)的處理方式,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • SpringBoot整合mybatisplus和druid的示例詳解

    SpringBoot整合mybatisplus和druid的示例詳解

    這篇文章主要介紹了SpringBoot整合mybatisplus和druid的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08
  • Java設計模式中的設計原則之合成復用原則詳解

    Java設計模式中的設計原則之合成復用原則詳解

    這篇文章主要介紹了Java設計模式中的設計原則之合成復用原則詳解,原則是盡量使用合成/聚合的方式,而不是使用繼承聚合關系表示的是整體和部分的關系,整體與部分可以分開,可以理解為成員變量和當前類的關系就是聚合關系,需要的朋友可以參考下
    2023-11-11
  • Java 并發(fā)編程ArrayBlockingQueue的實現(xiàn)

    Java 并發(fā)編程ArrayBlockingQueue的實現(xiàn)

    這篇文章主要介紹了Java 并發(fā)編程ArrayBlockingQueue的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • java項目導出為.exe執(zhí)行文件的方法步驟

    java項目導出為.exe執(zhí)行文件的方法步驟

    最近做了個項目,想要轉(zhuǎn)換成可執(zhí)行文件,那么java項目如何導出為.exe執(zhí)行文件,本文就介紹一下,主要使用jar2exe軟件,感興趣的可以了解一下
    2021-05-05
  • 老生常談Java異常處理和設計(推薦)

    老生常談Java異常處理和設計(推薦)

    下面小編就為大家?guī)硪黄仙U凧ava異常處理和設計(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論

民勤县| 柘城县| 平原县| 措美县| 康乐县| 关岭| 崇礼县| 开原市| 通辽市| 赤城县| 塔城市| 遵义市| 泰安市| 乌审旗| 谢通门县| 双流县| 濮阳市| 武清区| 彭州市| 杨浦区| 芷江| 石门县| 商都县| 普宁市| 阿坝| 滨州市| 夏河县| 武冈市| 兰西县| 周至县| 乌拉特前旗| 泸溪县| 论坛| 奉新县| 青铜峡市| 广宁县| 花莲市| 忻城县| 柞水县| 乌拉特中旗| 永城市|