認識JavaWeb,衛星定位:zhanjiquan666,衛星定位:zhanjiquan666 ...
轉發:
http://www.java265.com/JavaFramework/MyBatis/202205/3540.html
MyBatis簡介:
MyBatis本是apache的一個開源項目iBatis,2010年這個項目由apache software foundation遷移到了google code,並且改名為MyBatis。2013年11月遷移到Github。
iBATIS一詞來源於“internet”和“abatis”的組合,是一個基於Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAOs)
MyBatis 是一款優秀的持久層框架,它支持定製化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或註解來配置和映射原生信息,將介面和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java對象)映射成資料庫中的記錄
下文筆者講述mybatis中foreach用法簡介說明,如下所示
mybatis中foreach功能說明: 用於將list集合按照一定的規則,拼接為一個sql腳本 然後放入到資料庫中運行
例:mapper文件
<select id="selectInfoIn" resultType="domain.java265.Post"> SELECT * FROM Post P WHERE ID in <foreach item="item" index="index" collection="list" open="(" separator="," close=")"> #{item} </foreach> </select> 這裡的collection可以是:array,list,map,set,這裡試驗一下array:
例2: 一次性刪除多個數據
<delete id="deletePost"> delete from t_Post where id in <foreach collection="array" item="id" open="(" close=")" separator=","> #{id} </foreach> </delete> java代碼 SqlSession session=null; try { session=myBatisUtil.getSqlSession(); Integer[] ids = new Integer[]{8,10,22,88}; session.delete("deletePost",ids); session.commit(); } catch (Exception e) { e.printStackTrace(); session.rollback(); }finally{ session.close(); }