- 浏览: 910211 次
- 性别:
- 来自: 黑龙江
文章分类
- 全部博客 (209)
- struts1 (3)
- hibernate3 (19)
- java (13)
- spring2 (5)
- netBeans (1)
- eclipse (1)
- JSF (1)
- DIV+CSS篇章 (1)
- jFreeChart+Oracle之曲线,柱状及饼状图的实现 (1)
- JSF知识与技巧 (3)
- Oracle数据类型的介绍与比较 (2)
- J2EE (2)
- Ajax技术 (4)
- javaScript技术 (25)
- struts2 (16)
- C/C++程序设计 (1)
- oracle系统学习 (29)
- 算法分析 (0)
- Linux实践 (7)
- extjs开发经验 (13)
- flex开发总结 (1)
- FusionCharts总结 (0)
- 高级数据库总结 (0)
- SVG拓扑图开发总结 (0)
- CSS (1)
- CSS使用简介 (1)
- SVG (0)
- DOJO (0)
- Junit测试 (0)
- lucene (24)
- solr (6)
- tokyo tyrant 技术 (7)
- Html5 (1)
- 算法与数据结构 (0)
- 物联网相关技术学习 (0)
- UI设计 (1)
- webservice (0)
- Android (5)
- hibernate4 (3)
- solrcloud (0)
- dorado5 (0)
- dorado7 (0)
- elasticsearch (0)
- GWT (0)
- node.js (0)
- 并发编程 (1)
- 大数据 (1)
- 项目经验 (5)
最新评论
-
cs261244787:
楼主好人! 平安
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
xinsiyou:
牛逼,就是样式被搞没了
JS实现选项右移,左移,向上,向下调整顺序 -
unnamed__:
这代码风格就像一坨翔
java获取数据库的列名,类型等信息
Criteria Query是Hibernate提供的将SQL语句对象化表示的一种方法。当我们使用JDBC方式查询数据时会这样写:
select NAME FROM EMPLOYEE where ID = '001'
使用Hibernate的Criteria Query方式查询时,就可以使用我们已经习惯了的面向对象的方式。如下:
select NAME FROM EMPLOYEE where ID = '001'
使用Hibernate的Criteria Query方式查询时,就可以使用我们已经习惯了的面向对象的方式。如下:
程序代码
import net.sf.hibernate.Criteria;
import net.sf.hibernate.expression.Expression;
...
Criteria criteria = session.createCriteria(Employee.class);
criteria.add(Expression.eq("id", "001"));
ArrayList list = criteria.list();
...
import net.sf.hibernate.expression.Expression;
...
Criteria criteria = session.createCriteria(Employee.class);
criteria.add(Expression.eq("id", "001"));
ArrayList list = criteria.list();
...
其中Expression对象是where条件的封装,提供了查询限定机制,现在介绍一下他的具体使用:
Expression的方法描述
Expression.eq:对应SQL条件中的"field = value"。如:Expression.eq("id","001")
Expression.allEq:参数为一个Map对象,其中包含了多个属性和值对应关系。相当于多个Expression.eq关系,多个条件。如:
Expression.allEq:参数为一个Map对象,其中包含了多个属性和值对应关系。相当于多个Expression.eq关系,多个条件。如:
程序代码
map.put("id", "001");
map.put("name", "hiswing");
Expression.allEq(map);
map.put("name", "hiswing");
Expression.allEq(map);
Expression.gt:对应SQL条件中的"field > value "。如:Expression.gt("salary", new Integer(5000))
Expression.ge:对应SQL条件中的"field >= value"。
Expression.lt:对应SQL条件中的"field < value"。
Expression.le:对应SQL条件中的"field <= value"。
Expression.between:对应SQL条件中的"between"。
Expression.like:对应SQL条件中的"field like value"。
Expression.in:对应SQL条件中的"field in …"。
Expression.eqProperty:用于比较两个属性之间的值,对应SQL条件中的"field = field"。如:Expression.eqProperty("Employee.id", "Group.eid");
Expression.gtProperty:用于比较两个属性之间的值,对应SQL条件中的"field > field"。
Expression.geProperty:用于比较两个属性之间的值,对应SQL条件中的"field >= field"。
Expression.ltProperty:用于比较两个属性之间的值,对应SQL条件中的"field < field"。
Expression.leProperty:用于比较两个属性之间的值,对应SQL条件中的"field <= field"。
Expression.and:and关系组合。
如:
Expression.and(
Expression.eq("name","hiswing"),
Expression.eq("sex", new Integer(1))
)
Expression.and(
Expression.eq("name","hiswing"),
Expression.eq("sex", new Integer(1))
)
Expression.or:or关系组合。(使用方法同Expression.and)
Expression.sql:我们可以通过这个方法直接通过SQL语句限定查询条件。
注:在使用Criteria时,Expression中的KEY为POJO中的属性。如Expression.eq("id", "001")中的id为Employee对象中id这个属性,注意大小写。
****************************************************************************************
有很多预制的条件类型(Expression的子类)。有一个特别有用,可以让你直接嵌入SQL。
有很多预制的条件类型(Expression的子类)。有一个特别有用,可以让你直接嵌入SQL。
List cats = sess.createCriteria(Cat.class)
.add( Expression.sql("lower($alias.name) like lower(?)", "Fritz%", Hibernate.STRING) )
.list();
其中的{alias}是一个占位符,它将会被所查询实体的行别名所替代.
************************************************************
发表评论
-
hibernate-多对多关联关系实例
2012-02-17 18:10 0hibernate-多对多关联关系实例 -
hibernate-多对一关联关系实例
2012-02-17 16:47 0hibernate-多对一关联关系实例 -
hibernate-一对一关联关系实例
2012-02-17 16:35 0hibernate-一对一关联关系实例 -
hibernate-双向一对多关联关系实例
2012-02-17 16:35 1322hibernate-双向一对多关联关系实例 -
hibernate-一对多关联关系实例
2012-02-17 16:34 1373hibernate-一对多关联关系实例 -
hibernate-CRUD基本操作实例
2012-02-17 16:33 1064hibernate-CRUD基本操作实例 -
hibernate-cascade属性介绍
2012-02-17 10:47 25381.none:在保持,更新或删除当前对象时,忽略其他关联的对象 ... -
hibernate主键生成策略介绍
2012-02-17 09:16 1040可选的<generator&g ... -
hibernate一对多实例
2012-02-17 09:04 0hibernate一对多实例 -
EhCache的使用
2008-09-25 11:21 18031.EhCache是什么 EhCache是Hibern ... -
hibernate二级缓存攻略
2008-09-25 11:20 988很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇 ... -
Java开源项目Hibernate包作用详解
2008-09-25 11:18 1664摘要: Java开源项目Hibern ... -
Hibernate3调用存储过程用法
2008-09-25 11:17 1772DB2中简单存储过程 selectAllUsers CREAT ... -
让Hibernate输出SQL语句以便更加深入调试程序----参数配置
2008-09-25 11:16 3619在J2ee应用中,如果采用Hibernate框架,可以自动建立 ... -
Java数据类型,Hibernate数据类型,标准sql数据类型之间的对应表
2008-09-25 11:15 1534Java数据类型,Hibernate数据类型,标准sql数 ... -
Hibernate性能优化
2008-09-25 11:14 1151有很多人认为Hibernate天生效率比较低,确实,在普遍情况 ... -
Hibernate 参数设置一览表
2008-09-25 11:13 1089属性名 用途 hibernate.diale ... -
Hibernate中双向关联加载排序的解决方案
2008-09-25 11:11 1587问题:Hibernate的<many-to-many&g ... -
序列化和反序列化对象到 数据库
2008-09-25 11:09 2070/* * 将对象转化成java.sql.Blob ... -
Hibernate缓存管理
2008-09-25 11:01 9721. Cache简介: 缓存( ...
相关推荐
使用本地sql语句查询后,无需再使用Object对查询结果进行强制转换,而是直接将查询结果放到实体Bean里了。 PS: 其实只有一版,这里只所以叫最终版是因为该附件我上传了好几天传不上去,到最后报告说‘资源已经存在...
hibernate将本地SQL查询结果封装成对象(最终).zip
hibernate将本地SQL查询结果封装成对象。如进行复杂的统计等本地sql语句查询后,直接放到对象里了,而不会再使用Object进行强转
使用hibernate封装方法,显现使用一个dao,service,impl来关联两个表的操作,实现,增删改查基本操作
Hibernate操作持久化对象Hibernate操作持久化对象Hibernate操作持久化对象Hibernate操作持久化对象Hibernate操作持久化对象
类似hibernate的jdbc简单封装,说不定大家用的上。。
hibernate封装.pdf
Hibernate封装dao层
NULL 博文链接:https://zhouhaitao.iteye.com/blog/1123917
hibernate环境搭建基本操作封装,使用mysql开源数据库
集成spring,hibernate,并且自写了一个sql的解析器,只有controller和service层,非常方便
Hibernate对象的生命周期 Hibernate对象的生命周期 Hibernate对象的生命周期
一个很好的Hibernate 操纵持久化对象例子,如果想深入理解HIERNATE 的朋友,可以去研究一下。
hibernate查询之HQLhibernate查询之HQLhibernate查询之HQL
hibernate入门实例封装了HibernateUtil,完成数据库的添加操作,和查询操作。 Session的save方法和get方法。
Hibernate连表查询 Hibernate连表查询
hibernate 对象关系映射总结hibernate 对象关系映射总结hibernate 对象关系映射总结
小码哥Hibernate封装的查询方法的皮毛介绍共4页.pdf.zip
NULL 博文链接:https://vincent1003.iteye.com/blog/945052