Hibernate
xp9802
程序员`````````````````````````````````````
展开
-
六种方式实现hibernate查询
从点到面,讲讲hibernate查询的6种方法。分别是HQL查询,对象化查询Criteria方法,动态查询DetachedCriteria,例子查询,sql查询,命名查询。 如果单纯的使用hibernate查询数据库只需要懂其中的一项就可以完成想要实现的一般功能,但是从一个点,让我们掌握6中方法,则提供了更多选择。每一种方法都有其适用的情况与前提。HQL查询HQL是hibern...原创 2014-07-25 09:03:43 · 84 阅读 · 0 评论 -
hibernate 动态生成HQL
关于hibernate 动态生成HQL如果经常更改 某个字段 小范围的更改 建议打开动态生成 动态update对性能还有一个重大的影响,就是打开了以后,不同的对象的sql语句会不一样,如果你一次更新多条记录,hibernate将不能使用 executeBatch进行批量更新,这样效率降低很多。同时,在这种情况下,多条sql意味着数据库要做多次sql语句编译。hibernate默认...原创 2014-08-08 16:44:41 · 184 阅读 · 0 评论 -
Hibernate三态的代码范例
hibernate 实体对象的生命周期主要分为三个状态,Transient(瞬态),Persistent(持久态),Detached(游离态)。 1.Transient(瞬态) 表示该实体对象在内存中是自由的,也就是说和数据库没有任何关系。 //创建一个瞬态对象 User user = new User(); user.setName(userName); use...原创 2014-08-07 08:53:20 · 78 阅读 · 0 评论 -
Hibernate 常见异常
1.错误异常:Java代码 org.hibernate.InstantiationException: No default constructor for entity: com.tks.skyproject.model.ImplementLogAttach at org.hibernate.tuple.PojoInstantiator.instantiate(...原创 2014-08-07 08:53:18 · 140 阅读 · 0 评论 -
hibernate 数据库表-javabean
1、用eclipse的数据库管理器 date source explorer建立与数据库的链接。 具体方法为在“datebase connections”上右键->new一个链接 2、打开hibernate tool插件的 hibernate configurations窗口, 右键->add configuration,配置属性。p...原创 2014-08-07 08:53:12 · 106 阅读 · 0 评论 -
hibernate4.0+版本和3.0+版本的区别总结
hibernate4.0+版本和3.0+版本的区别总结 马老师说的好。要穿一手鞋,so,自己总结下hibernate4.1版本中的新特性和hibernate3.3做区别 1.数据库方言设置 <property name=”dialect”>org.hibernate.dialect.MySQL5Dialect</property> 在3....原创 2014-08-07 08:53:10 · 73 阅读 · 0 评论 -
hibernate实体的几种状态
实体的生命周期中,实体主要经过瞬时(Transient),托管(Attatched或Managed),游离(Detached)和销毁(Removed)四个状态. 瞬时状态:是指对象被new之后尚未保存到数据库,一旦服务器停止,JVM会回收它所占的内存资源,此时对象没有与session关联. 托管状态:在数据库中已有数据与之对应,且与session相关联。实体状态转换到托管状态的方法:...原创 2014-08-06 08:43:26 · 139 阅读 · 1 评论 -
配置hibernate关联关系时的配置错误
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory_stoller' defined in class path resource [applicationContext.xml]: Invocation of init method fai...原创 2014-08-06 08:43:15 · 149 阅读 · 1 评论 -
hibernate 调试控制台出现了HQL语句但是数据库操作失败
今天调试了一个数据插入,结果控制台出现了两次插入的HQL语句,但是数据库中没有插入数据 经过检查之后发现我犯了如下错误1、使用了数据库的关键字作为键名2、在pojo类中使用了int,long等不可为空的数据类型,应该为Integer,Long3、主键使用了自动增长,而pojo类中使用了int类型,在插入数据的时候,先行创建类的对象,而对象的主键因为是数据库的自增长类型,...原创 2014-08-06 08:43:13 · 248 阅读 · 1 评论 -
配置hibernate many-to-one映射
<hibernate-mapping package="com.bmdcy.model"><!-- 班级管理 --><class name="com.bmdcy.model.Class" table="b_class" > <id name="classid" column="class_id&quo原创 2014-08-04 11:13:13 · 79 阅读 · 0 评论 -
Hibernate java.lang.NoSuchFieldError: INSTANCE
在使用hibernate3.6.2是我遇到了一个有趣的错误java.lang.NoSuchFieldError: INSTANCEat org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:94)at org.hibernate.type.TypeResolver.<init>(TypeRe...原创 2014-08-04 11:13:11 · 136 阅读 · 0 评论 -
Hibernate菜鸟学习笔记
关系映射一对一,一对多,多对一,多对多1)怎么写Annotation2)增删改查CRUD怎么写一对一:单向(主键,外键),双向(主键,外键),中间表一对多:单向,双向多对一:单向,双向多对多:单向,双向集合映射,继承关系(不重要),组件映射一对一:如,husband,wife. A husband to A wife. 建立两个类,都有id,name两个属性可在husband类中引用wife....原创 2014-08-02 23:40:48 · 142 阅读 · 0 评论 -
Hibernate枚举类型映射
当使用Hibernate枚举类型映射时,默认的映射方式是tinybolb类型,需要进行一些额外的配置来满足个性化需求。 <property name="sex"></property> 可以使用以下配置改变存储方式:<property name="sex"> <type name="org.hibernate.ty...原创 2014-07-25 09:03:58 · 146 阅读 · 0 评论 -
hibernate new() 返回值使用
String hql = "select new map ( count(t.pushId) as count,t.subjclassId as subjclassId) from MemberPushProj t where t.productId="+productId+" and t.memberPerInfoInPushProj.loginId="+memid+" group by ...原创 2014-07-25 09:03:56 · 174 阅读 · 0 评论 -
Hibernate的set排序
hibernate 中对set对象的两种配置方法:(一)使用order-by对set排序,只需要修改set设置: <set name="standards" ... order-by="st_id desc" > ...</set>//注意:st_id必须是数据表里的字段名,不能使类里的属性名//使用order-by,实质是hibernate...原创 2014-07-25 09:03:54 · 133 阅读 · 0 评论 -
hibernate中各种框架的xml文件定义
hibernate.cfg.xml:<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> U...原创 2014-07-25 09:03:47 · 92 阅读 · 0 评论 -
hibernate4.0+版本和3.0+版本的区别总结
马老师说的好。要穿一手鞋,so,自己总结下hibernate4.1版本中的新特性和hibernate3.3做区别1.数据库方言设置<property name=”dialect”>org.hibernate.dialect.MySQL5Dialect</property>在3.3版本中连接MySQL数据库只需要指明MySQLDialect即可。在4.1版本中...原创 2014-08-08 16:44:43 · 82 阅读 · 0 评论