1. 程式人生 > >mybatis之接口方法多參數的三種實現方式

mybatis之接口方法多參數的三種實現方式

自動 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     public
void 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之接口方法多參數的三種實現方式