hibernate取出count(*)的办法】的更多相关文章

1.定义查询语句    String sql="select count(*) from ExcelInfor";2.获取count(*)返回结果: (1)int count=Integer.parseInt(session.createSQLQuery(sql).list().get(0).toString()); (2)int count=((Long)(session.createQuery(sql).iterate().next())).intValue(); (3)int c…
/** * @TODO:查询某一年度的所有计划数量 */ public int findCountByYear(String currYear) { String hqlString = "select count(*) from WaterPlan as p where p.planYear ='"+currYear+"'"; Query query = this.getSession().createQuery(hqlString); return ((Numb…
设计了一个数据库,某一个列名字是key,这与mysql数据库关键字冲突了,Hibernate下save总是报错. 在mysql命令中,解决办法很简单,只需要将关键字key用引号括起来就好了. 在Hibernate下也很简单,注解的时候为key加上双引号即可,如下所示,记得为引号转义哦: @Column(name = "\"key\"") private String key;…
1.Hibernate 报错:this project is not a myeclipse hibernate project . assuming hibernate 3 cap res:项目名上右键--〉myeclipse-->add hibernate capabilites -->next-->hibernate config file --> existing -->选择现有工程存在的hibernate配置文件--> next --> 不生成facto…
org.hibernate.LazyInitializationException异常failed to lazily initialize a collection...的解决方案使用hibernate从一方获取多方信息的时候发生 org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.haowei.carmanager.model 这个异常与hiberna…
序言 很多看起来很难的东西其实并不难,关键是看自己是否花费了时间和精力去看,如果一个东西你能看得懂,同样的,别人也能看得懂,体现不出和别人的差距,所以当你觉得自己看了很多书或者学了很多东西的时候,你要想想,你花费的也就那么一点时间,别人花你这么多时间也能够学到你所学到的东西,所以还是要继续努力.既然不是天才,唯有靠勤奋来弥补. --WH 一.概述 检索策略分三大块,类级别检索策略和关联级别检测策略. 类级别检索策略:get.load. 关联级别检索策略:order.getCustomer().g…
所谓懒加载(lazy)就是延时加载,就是当在真正需要数据的时候,才真正执行数据加载操作 至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适,因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,我们让数据在需要的时候才进行加载,这时我们就用到了懒加载. 1.类级别的懒加载(session.load()方法) get方法:没有任何策略.调用即立即查询数据库加载数据. load方法: 应用类级别的加载策略 1.get方法测试,没有任何延迟加载策略 @Test // get方…
在hibernate中进行多表查询,每个表中各取几个字段,也就是说查询出来的结果集并没有一个实体类与之对应,如何解决这个问题? 解决方案一,按照Object[]数据取出数据,然后自己组bean 解决方案二,对每个表的bean写构造函数,比如表一要查出field1,field2两个字段,那么有一个构造函数就是Bean(type1 filed1,type2 field2) ,然后在hql里面就可以直接生成这个bean了.具体怎么用请看相关文档. 本笔记继续使用dept部门表,emp员工表,一对多.多…
关于HQL HQL与SQL非常类似,只不过SQL的操作对象是数据表,列等对象,而HQL操作的是持久化类,实例,属性等. HQL是完全面向对象的查询语言,因此也具有面向对象的继承,多态等特性. 使用HQL的一般步骤为: 获取session对象 编写HQL语句 使用session的createQuery方法创建查询对象(Query对象) 使用SetXxx(index/para_name, value)为参数复制 使用Query对象的list()方法返回查询结果列表(持久化实体集) 下面演示一下HQL…
一.Hibernate 的检索策略本质上是为了优化 Hibernate 性能. 二.Hibernate 检索策略包括类级别的检索策略.和关联级别的检索策略(<set> 元素) 三.类级别的检索策略 1. 立即检索.延迟检索 2. 通过 <class> 节点的 lazy 属性来控制.默认为 true,即为延迟检索. 3. 只针对 session 的 load() 方法生效. 默认情况下,通过 load() 方法获取到的对象是一个代理对象,Hibernate 创建代理对象时,仅会初始化…
一.Session概述 1.Session 接口是 Hibernate 向应用程序提供的操纵对数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载Java 对象的方法. 2.理解Session的缓存 使用缓存的目的:尽量减少访问数据库的频率 (1)在 Session 接口的实现中包含一系列的 Java 集合, 这些 Java 集合构成了 Session 缓存. 只要 Session 实例没有结束生命周期, 存放在它缓存中的对象也不会结束生命周期 (2)当session的save()方…
今天操作XML的时候,用到了批量循环删除节点.出现了问题,即循环未结束,程序就跳出循环.搞了好久才弄明白. 解决前的代码: XmlNodeList items = xn.ChildNodes; //获取节点列表 //删除所有节点 for (int i = 0; i < items.Count; i++) { XmlElement page = (XmlElement)items[0]; xn.RemoveChild(page); } 因为每次循环,删除节点后,item.Count的值都会-1.…
http://blog.sina.com.cn/s/blog_56fd66a70100hxjf.html http://timke.blog.163.com/blog/#m=0 环境:MFC  Dialog  UNICODE 1 寻找包含某个字符的字段值并将符合条件的记录取出 ,like语句 _ConnectionPtr m_pCon;  _RecordsetPtr m_pRs;  try{ CString sql=SELECT * FROM 表 WHERE 字段 LIKE  '%' HRESU…
所有项目导入对应的hibernate的jar包.mysql的jar包和添加每次都需要用到的HibernateUtil.java 这里的hibernate.cfg.xml配置信息我就不再写了 第一节:检索策略属性Lazy Lazy:true (默认) 延迟检索:set 端一对多 Lazy:false 立即检索:set 端一对多 Lazy:extra 增强延迟检索: set 端一对多 Lazy:proxy(默认) 延迟检索:many-to-one 多对一 Lazy:no-proxy 无代理延迟检索:…
上一话struts2,hibernate,spring整合笔记(1) 接下来继续 配置完struts之后就要开始hibernate的配置 hibernate的环境并不依赖web开发环境,在我第一次配置hibernate时用的javase, 在window-> preferences->java->user libraries,创建一个新的Use libraries,添加相应的jar包 再在项目build path->build configurationpath->add l…
Hibernate: select count(*) as y0_ from test.course this_ org.hibernate.QueryException: could not resolve property: address of: com.example.domain.Course at org.hibernate.persister.entity.AbstractPropertyMapping.propertyException(AbstractPropertyMappi…
通常使用的Hibernate通常是三种:hql查询,QBC查询和QBE查询: 1.QBE(Qurey By Example)检索方式 QBE 是最简单的,但是功能也是最弱的,QBE的功能不是特别强大,仅在某些场合下有用.一个典型的使用场合就是在查询窗口中让用户输入一系列的查询条件,然后 返回匹配的对象.QBE只支持=和like比较运算符,无法不大区间值,及其或的匹配.在这种情况下,还是采用HQL检索方式或QBC检索方式. /** * @function 根据传递过来的Object,分页显示在数据…
     上一篇文章我们简单介绍了Hibernate相关的一些最基本的文件及其作用,并在最后完整的搭建了Hibernate的运行环境,成功的完成了与数据库的映射.但是至于其中的一些更加细节的地方并没有很详尽的解释,本篇则主要介绍Hibernate中的一个关键元素,持久化类.主要涉及以下一些内容: 定义用作持久化类的基本要求 持久化对象的几种不同状态及其相互之间的转换 使用Hibernate完成对数据库的crud操作 一.定义用作持久化类的基本要求      所谓的持久化类其实本质上也就是一个普通…
HQL语法 1.基本语法 String hql = " from com.yyb.domain.Customer ";//完整写法 String hql2 = " from Customer "; //简单写法 String hql3 = " from java.lang.Object ";//查询所有表 2.排序 //排序,和sql一样 String hql1 = " from Customer order by cust_id as…
准备 模型及映射文件 package com.zze.bean; import java.util.HashSet; import java.util.Set; public class Class { public Class() { } public Class(Integer id, String name) { this.id = id; this.name = name; } private Integer id; private String name; private Set<St…
Hibernate -- lazy加载 hibernate类级别懒加载: lazy:true(默认) //类级别懒加载 //load方法 //class lazy属性 //默认值:true load获得时,会返回代理对象,不查询数据库,使用时才查询 public void fun1() { Session session = HibernateUtils.openSession(); session.beginTransaction(); //--------------------------…
检索策略 类级别检索 默认检索策略:默认延迟加载, 可以使用lazy属性来进行改变. session.get(clazz,object)默认立即加载 @Test //测试左外连接查询 public void test13(){ Session session = HibernateUtils.getSession(); Transaction bt = session.beginTransaction(); Customer customer = session.get(Customer.cla…
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客讲师Hibernate中的Criteria查询! 一,Criteria简介: 刚接触Hibernate的时候,就有一个概念,全自动的ORM框架,不用写SQL语句,但是实际我们还是有了另一个名词HQL,这难道是来搞笑的吗? 其实不然,当你接触到Criteria这个名词的时候,你就知道全自动的魅力了 二,Criteria的优缺点: 优点: 全自动,无需sql,hql,它以Java OOP的思想来操作数据…
转自:http://blog.csdn.net/firejuly/article/details/81902 第一章     Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分. Mybatis 是另外一种优秀的O/R mapping框架.目前属于apache的一个子项目. MyBatis 参考资料官网:http://www.mybatis.org/core/zh/index.html Hiber…
表结构: 实体类图: CRUD: Student: package com.demo.model; import java.io.UnsupportedEncodingException; import java.util.Set; /**学生信息 * @author wobendiankun *2014-10-19 下午08:54:29 */ public class Student { private int studentId ; private String studentName ;…
http://blog.csdn.net/yerenyuan_pku/article/details/70768603 HQL优化 使用参数绑定  使用绑定参数的原因是让数据库一次解析SQL,对后续的重复请求可以使用生成好的执行计划,这样做节省CPU时间和内存. 避免SQL注入. 尽量少使用NOT 如果where子句中包含not关键字,那么执行时该字段的索引失效. 尽量使用where来替换having having在检索出所有记录后才对结果集进行过滤,这个处理需要一定的开销,而where子句限制…
延迟加载:控制sql语句发送时机 抓取策略:控制sql语句格式,子查询.连接查询.普通sql 延迟加载 延迟加载(lazy),也叫做懒加载:执行到该行代码时,不发送sql进行查询,只有在真正使用到这个对象的一些未知的属性才会真正发送sql去查询 分类: 类级别的延迟加载 关联级别的延迟加载 类级别的延迟加载 使用load方法查询某个对象时是否使用延迟加载 一般在映射文件的<class>标签中配置lazy属性:<class name="com.qf.entity.Parent&q…
时间:2017-1-23 19:08 --区分延迟和立即检索1.立即检索    当执行某行代码时,会马上发出SQL语句进行查询.    例如:get()2.延迟检索    当执行某行代码时,不会马上发出SQL语句,只有当真正使用对象时,才会向数据库发出SQL语句.    例如:load()3.示例代码    /*      * 区分立即检索和延迟检索      */     public void fun1(){         Session session = HibernateUtils.…
C#中利用委托实现多线程跨线程操作 - 张小鱼 2010-10-22 08:38 在使用VS2005的时候,如果你从非创建这个控件的线程中访问这个控件或者操作这个控件的话就会抛出这个异常.这是微软为了保证线程安全以及提高代码的效率所做的改进,但是也给大家带来很多不便.其实解决这个问题有两种方法:一,是通过设置System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;在你的程序初始化的时候设置了这个属性,而且在你的控件…
转自:http://blog.csdn.net/javafound/archive/2007/05/14/1607931.aspx <Velocity 模板使用指南>中文版 源文见 http://velocity.apache.org 声明: 转载请保留此页声明 ************************************************************************** 此文档为蓝杰实训学员拓展实训之用. 蓝杰实训不对译文中某些说法可能会对您的系统或开发…