Hibernate数据库操作

Criteria criteria = session.createCriteria(TUser.class);
criteria.add(Expression.eq("name","Erica"));
criteria.add(Expression.eq("sex",new Integer(1)));

上面的三句话相当于:“select * from t_user where name='Erica' and sex=1”
Criteria 本身就是一个查询容器

Criteria 查询表达式:

Expression.eq 相当于 field=value
Expression.allEq 参数为一个map对象,相当于多个Expression.eq 的叠加
Expression.gt field>value
Expression.ge field>=value
Expression.lt field<value
Expression.le field<=value
Expression.between(field,a,b) field位于a和b之间
Expression.like field like value
Expression.in field in ...
Expression.eqProperty field,field (判断两个属性值是否相等)
Expression.gtProperty field>field
Expression.geProperty field>=dield
Expression.ltProperty field<field
Expression.leProperty field<=field
Expression.and and关系组合
Expression.or or关系组合
Expression.sql 补充方法

Expression.and(Expression.eq("name",Erica),Expression.eq("sex",new Integer(1)));

注意:上述的field全部指代pojo中的属性名
Hibernate 3 中引入了Restrictions类来作为Expression的替代类(Expression类被设定为半废弃状态),使用方法一致


Example类实现了Criterion接口,也可以用作Criteria的查询条件。作用:根据已有对象,查找属性与之相符的其他对象。
如:
TUser exampleUser = new TUser();
exampleUser.setName("Erica");
criteria.add(Example.create(exampleUser));
List list = criteria.list();

功能是:查询所有name属性与exampleUser对象的name属性相同的记录。
相当于:criteria.add(Expression.eq("name","Exrica"));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值