
Hibernate
文章平均质量分 75
x1n1010
这个作者很懒,什么都没留下…
展开
-
Hibernate在oracle中ID增长的两种方式
Hibernate在oracle中ID增长的两种方式根据hibernate的文档,有两种方式实现实体对象的主键自动增长。 第一种:设置ID的增长策略是sequence,同时指定sequence的名字,最好每个表建一个sequence,此种做法就如同MS-SQL,MY-SQL中的自动增长一样,不需要创建触发器,具体的oracle数据库脚本及hibernate配置文件如下:转载 2013-11-16 12:45:11 · 681 阅读 · 0 评论 -
Hibernate 异常org.hibernate.LazyInitializationException: could not initialize prox
Hibernate的Lazy初始化1:n关系时,必须保证是在同一个Session内部使用这个关系集合,不然Hiernate将抛出异常。两种处理方法:一、这是延时加载的问题,把有关联的所有pojo类,在hibernate.cfg.xml文件中。一般在many-to-one中,set标签内中设lazy="false" 。二、用OpenSessionInViewFilter过滤器,注意h转载 2013-11-18 13:12:42 · 1669 阅读 · 0 评论 -
关于spring+hibernate的FlushMode的记录
说明FlushMode有五种属性1 NEVEL 已经废弃了,被MANUAL取代了2 MANUAL spring3.x中的opensessioninviewfilter已经将默认的FlushMode设置为MANUAL了;如果FlushMode是MANUAL或NEVEL,在操作过程中hibernate会将事务设置为readonly,所以在增加、删除或修改操作过程中会转载 2013-11-18 19:58:12 · 1245 阅读 · 0 评论 -
异常积累:org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in
此异常是由于Spring提供的Open Session In View而引起的。开启OpenSessionInViewFilter这个过滤器的时候FlushMode就已经被默认设置为了MANUAL,如果FlushMode是MANUAL或NEVEL,在操作过程中 hibernate会将事务设置为readonly,所以在增加、删除或修改操作过程中会出现该错误filter>转载 2013-11-18 19:47:15 · 1031 阅读 · 0 评论 -
Hibernate中List、Iterator的区别
List和Iterator的区别让我们先运行一下代码实例:public void fillAll(){Session session=HibernateUtil.getSession();Query query=session.createQuery("from Customers");List list=query.list();for(Customers l:list)转载 2013-11-11 22:10:18 · 758 阅读 · 0 评论 -
hibernate性能优化的几点建议
hibernate性能优化的几点建议 1、针对oracle数据库而言,Fetch Size 是设定JDBC的Statement读取数据的时候每次从数据库中取出的记录条数,一般设置为30、50、100。Oracle数据库的JDBC驱动默认的Fetch Size=15,设置Fetch Size设置为:30、50,性能会有明显提升,如果继续增大,超出100,性能提升不明显,反而会消耗内存。转载 2013-11-11 22:19:21 · 615 阅读 · 0 评论 -
Hibernate 映射文件 inverse整理
--例子使用客户表和订单表,一个客户可以有多个订单,一个订单只能属于一个客户。下面以一对多双向关联关系为例:public void saveCustomerAndOrderSeparately() { Session session = sessionFactory.openSession(); Transaction tx; try { tx = session.b原创 2013-11-12 08:47:19 · 630 阅读 · 0 评论 -
Hibernate 中HibernateTemplate对象如何执行普通SQL语句
/** * HibernateTemplate执行普通sql语句;方法1 */ public List getViewRecordByUserAndRandom6(int userId) { final int userIdf = userId; List viewRecordList = this.getHibernateTemplate().executeFind(原创 2013-11-12 11:18:31 · 8734 阅读 · 0 评论