Hibernate的使用技巧②】的更多相关文章

第八章   Hibernate数据操作技巧8.1 分组统计数据    语法:[select]... from ...[where] [group by...[having...]] [order by...]    8.1.1 聚合函数        1.count():统计记录数            例:Long count=(Long) session.createQuery("select count(*) from Dept d").uniqueResult();      …
最近正在拜读Hibernate之父大作<Java Persistence with Hibernate>,颇有收获.在我们熟悉的Hibernate映射文件中也大有乾坤,很多值得我注意的地方.在Hibernate的映射文件的class tag使用dynamic-insert,dynamic-update,可以优化生成的SQL语句,提高SQL执行效率,最终可以提高系统性能.如,有一个User类.   public class User { /** Creates a new instance of…
1.Hibernate统计记录的数量 Criteria c = session.createCriteria(User.class.getName());        c.setProjection(Projections.rowCount());        CheckRowNumResponseBean result = new CheckRowNumResponseBean();   result.setRowNum(Integer.parseInt(c.uniqueResult().…
不管在编程语言的排行榜中,还是在大多数企业应用的广泛程度来看,Java一直都是当之无愧的榜首.Java语言有着独特的魅力吸引着广大的年轻人去学习,每个人学习的方式方法不一样. 第一步:首先要做好学习前的准备工作:Java语言一般用于大型的服务器程序开发,所有有必要了解如下内容:Unix开发环境Unix系统原理.Unix开发环境.Unix常用命令.熟练掌握Unix常用命令;熟练构建下的Java开发环境. 第二步:然后进入Java语言基础的学习阶段,学习任何一门语言都要打好基础,曾经学过高级程序语言…
介绍 尽管有SQL标准,但每个关系数据库终将是唯一的,因此你需要调整数据访问层,以便充分利用在使用中的关系数据库. 在本文中,我们将介绍在使用带有JPA和Hibernate的MySQL时,为了提高性能,我们可以做哪些事情. 不要使用AUTO标识符GeneratorType 每个实体都需要标识符,标识符惟一地标识与该实体关联的表记录.JPA和Hibernate允许根据三种不同的策略自动生成实体标识符: IDENTITY SEQUENCE TABLE 正如我在这篇文章中所解释的,当增加数据库连接数时…
1.Hibernate是如今最流行的开源对象关系映射(ORM)持久化框架,SSH框架组合是很多JavaEE工程的首选,java持久化框架(JPA)的设计师是Hibernate的作者,因此对于Hibernate的一些基本知识在JPA学习笔记总结中具体总结.本篇只总结一些Hibernate使用中的一些小技巧. 2.实体对象的3中状态: 实体对象的生命周期是Hibernate中的一个关键概念,实体对象生命周期中有以下3种状态: (1).Transient(自由状态):有人也叫透明状态,即在内存中自由存…
首先,要想使用数据库中配置的默认值就必须不让hibernate覆盖了默认值,需要配置property insert="false" update="false",告诉hibernate不对该属性执行insert.update操作,这要就不会覆盖我们在数据库中配置的默认值了.除此之外,我们还需要配置hibernate对该表的操作,dynamic-insert="true" dynamic-update="true", 实现动态的…
以Department(部门类)和User(用户类)作为例子: 类图如下: 一般hibernate.cfg.xml的配置文件开头都是如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sour…
JPA和Hibernate提供了一系列暗示hints能够帮助你更好地定制你的查询语言,这些小暗示或暗语是一种附加信息,你可以利用这些暗语做很多事情,比如设置查询的timeout,使用实体图或定义查询缓存的缓存. 在我们介绍一系列暗语之前,首先我们看看如何使用查询暗语,你可以在EntityManager.find 方法中使用它,EntityManager.find接受一个HashMap<String,Object>类型,该HashMap的值就是你提供的暗语设置,相当于提供一个附加参数. Enti…
================================================================================= 模板: <!-- ?属性,本类与?类的多对多的关系 --> <set name="第一个问号值" table="中间表(类名_对方类名 或 对方类名_类名)其中两个地方的要一样"> <key column=" (本类的名字+Id) "></ke…