1. 程式人生 > >mybatis中的mapper接口文件以及example類的實例函數以及詳解

mybatis中的mapper接口文件以及example類的實例函數以及詳解

lean boolean sql 語句 sql amp keys value per lec

##Example example = new ##Example();    
example.setOrderByClause("字段名 ASC"); //升序排列,desc為降序排列。    
example.setDistinct(false)//去除重復,boolean型,true為選擇不重復的記錄。    
Criteria criteria = new Example().createCriteria();    
is null;is not null;    
equal to(value);not equal to(value);    
GreaterThan(value);GreaterThanOrEqualTo(value);    
LessThan(value); LessThanOrEqualTo(value);    
in(item,item,item,...);not in(item,item,item,...);    
like(
"%"+value+"%");not like("%"+value+"%"); Between(value1,value2);not between(value1,value2) mybatis中mapper的實例函數: int countByExample(UserExample example) thorws SQLException:按條件計數。 int deleteByPrimaryKey(Integer id) thorws SQLException:按主鍵刪除。 int deleteByExample(UserExample example) thorws SQLException:按條件刪除。 String
/Integer insert(User record) thorws SQLException:插入(返回值為id值) User selectByPrimaryKey(Integer id) thorws SQLException:按主鍵查詢。 List<?>selectByExample(UserExample example) thorws SQLException:按條件查詢 List<?>selectByExampleWithBLOGs(UserExample example) thorws SQLException:按 條件查詢(包括BLOB字段)。只有當數據表中的字段類型有為二進制的才會產生。
int updateByPrimaryKey(User record) thorws SQLException:按主鍵更新 int updateByPrimaryKeySelective(User record) thorws SQLException:按主鍵更新 值不為null的字段 int updateByExample(User record, UserExample example) thorws SQLException: 按條件更新 int updateByExampleSelective(User record, UserExample example) thorws SQLException:按條件更新值不為null的字段 mybatis中mapper的實例函數詳解: ① selectByPrimaryKey() User user = ##Mapper.selectByPrimaryKey(100); 相當於select * from user where id = 100 ② selectByExample() 和 selectByExampleWithBLOGs() UserExample example = new UserExample(); Criteria criteria = example.createCriteria(); criteria.andUsernameEqualTo("joe"); criteria.andUsernameIsNull(); example.setOrderByClause("username asc,email desc"); List<?>list = ##Mapper.selectByExample(example); 相當於:select * from user where username = ‘joe‘ and username is null order by username asc,email desc 註:在iBator 生成的文件UserExample.java中包含一個static 的內部類 Criteria , 在Criteria中有很多方法,主要是定義SQL 語句where後的查詢條件。 ③ insert() User user = new User(); user.setId(101); user.setUsername("test"); user.setPassword("123") user.setEmail("[email protected]"); ##Mapper.insert(user); 相當於:insert into user(ID,username,password,email) values (101,‘test‘,‘123‘,[email protected]); ④ updateByPrimaryKey() 和 updateByPrimaryKeySelective() User user =new User(); user.setId(101); user.setUsername("joe"); user.setPassword("joe"); user.setEmail("[email protected]"); ##Mapper.updateByPrimaryKey(user); 相當於:update user set username=‘joe‘,password=‘joe‘,[email protected] where id=101 User user = new User(); user.setId(101); user.setPassword("joe"); ##Mapper.updateByPrimaryKeySelective(user); 相當於:update user set password=‘joe‘ where id=101 ⑤ updateByExample() 和 updateByExampleSelective() UserExample example = new UserExample(); Criteria criteria = example.createCriteria(); criteria.andUsernameEqualTo("joe"); User user = new User(); user.setPassword("123"); ##Mapper.updateByPrimaryKeySelective(user,example); 相當於:update user set password=‘123‘ where username=‘joe‘ ⑥ deleteByPrimaryKey() ##Mapper.deleteByPrimaryKey(101); 相當於:delete from user where id=101 ⑦ deleteByExample() UserExample example = new UserExample(); Criteria criteria = example.createCriteria(); criteria.andUsernameEqualTo("joe"); ##Mapper.deleteByExample(example); 相當於:delete from user where username=‘joe‘ ⑧ countByExample() UserExample example = new UserExample(); Criteria criteria = example.createCriteria(); criteria.andUsernameEqualTo("joe"); int count = ##Mapper.countByExample(example); 相當於:select count(*) from user where username=‘joe‘

mybatis中的mapper接口文件以及example類的實例函數以及詳解