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

来源:互联网 发布:java文件的输入输出流 编辑:程序博客网 时间:2024/06/11 02:46
##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'


转载地址:http://www.cnblogs.com/linjiaxin/p/6099563.html

阅读全文
0 0
原创粉丝点击