mybatis之接口方法多參數的三種實現方式
阿新 • • 發佈:2018-01-15
自動 spa commit col pri true keys use 數據
關鍵代碼舉例:
DaoMapper.xml
1 <!-- 傳入多個參數時,自動轉換為map形式 --> 2 <insert id="insertByColumns" useGeneratedKeys="true" keyProperty="id"> 3 insert into user (id, name, age) values (NULL ,#{param1}, #{param2}) 4 </insert> 5 <insert id="insertByZhuJie" useGeneratedKeys="true" keyProperty="id"> 6 insert into user (id, name, age) values (NULL ,#{name}, #{age}) 7 </insert> 8 <insert id="insertByMap" useGeneratedKeys="true" keyProperty="id"> 9 insert into user (id, name, age) values (NULL ,#{name}, #{age}) 10 </insert>
UserDao.java
1 // 插入數據;多參數三種方式:默認Map、使用Map傳參和使用註解別名 2 public int insertByColumns(String name, int age); 3 public int insertByZhuJie(@Param("name") String name, @Param("age") int age); 4 public int insertByMap(Map map);
TestDao.java
1 // 多參數插入數據的三種方式 2 @Test 3 publicvoid testInsertByColumns() { 4 UserDao userDao = session.getMapper(UserDao.class); 5 String name = "insertByColumns"; 6 int age = 33; 7 // int n = userDao.insertByColumns(name, age); 8 // int n = userDao.insertByZhuJie(name, age); 9 10 Map map = new HashMap(); 11 map.put("name", name); 12 map.put("age", age); 13 int n = userDao.insertByMap(map); 14 15 session.commit(); 16 System.out.println("插入數據name:" + name); 17 System.out.println(n); 18 }
mybatis之接口方法多參數的三種實現方式