mybatis中的mapper接口文件以及example类的实例函数以及详解

##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("joe@163.com");    
##Mapper.insert(user);    
相当于:insert into user(ID,username,password,email) values        
(101,'test','123','joe@163.com');        
 ④ updateByPrimaryKey() 和 updateByPrimaryKeySelective()        
User user =new User();    
user.setId(101);    
user.setUsername("joe");    
user.setPassword("joe");    
user.setEmail("joe@163.com");    
##Mapper.updateByPrimaryKey(user);    
相当于:update user set username='joe',password='joe',email='joe@163.com'        
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'

 

posted @ 2017-08-22 21:53  李慕白520  阅读(298)  评论(0编辑  收藏  举报