草庐IT

hibernate3

全部标签

java - Spring 3.1 + Hibernate 4.1 Propagation.Supports 问题

我正在将我的项目从Spring3.0+hibernate3.6.x迁移到S3.1+H4.1我的新代码如下org.hibernate.dialect.xtrueupdatetruex.y.z.entities.Student当将getStudent方法标记作为SUPPORTS运行并且只读时,我得到了org.hibernate.HibernateException:NoSessionfoundforcurrentthreadatorg.springframework.orm.hibernate4.SpringSessionContext.currentSession(SpringSessi

java - hibernate 中查询参数为 null 或为空时如何处理?

我正在使用JPA,hibernate3。StringsqlQuery="FROMTraceEntityVOwherelotNumber=:lotNumberandmfrLocId=:mfrLocIdandmfrDate=:mfrDateandqtyInitial=:qtyInitialandexpDate=:expDate";Queryquery=entityManager.createQuery(sqlQuery).setParameter("lotNumber",traceEntityVO.getLotNumber()).setParameter("mfrLocId",traceE

java - hibernate 缓存 : Are objects returned by a cached query stored in L2 cache?

我们在项目中使用了hibernate4和ehcache。我们主要处理不可变对象(immutable对象),因此缓存是一个非常适合我们应用程序的功能。在尝试启用查询缓存时,我们遇到了以下问题:假设我们有以下实体:@Entity@Table(name="DOGS")@Immutable@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)classDog{@Id@ColumnLongid;@ColumnStringname;}和查询:Criteriacriteria=session.createCriteria(Dog.class);criteri

java - hibernate 默认采用哪种命名策略

在研究如何实现自定义命名策略(仅针对表名)时,我偶然发现了一个我无法解决的不一致问题。(我在JBoss6.1.0.Final和PostgreSQL9.1.9上使用hibernate-core3.6.6.Final)NamingStrategy似乎有三个内置实现:默认命名策略EJB3NamingStrategy改进的命名策略org.hibernate.cfg.Configuration中的默认值似乎设置为EJB3NamingStrategy。然而,表名似乎是根据一种策略设置的,与以上都不匹配。例子:类名:package.ClassName结果表名称:classname策略1和2简单地调用

java - Spring Data Hibernate + 可分页 : Returns empty results

我正在使用SpringData存储库,没有任何问题。当我尝试添加Paging(使用Pageable接口(interface))时,它工作正常。但是,当返回的结果集小于页面大小时,结果为空列表。以下是我的PageRequest。index和objectsPerPage的默认值分别为0和10。newPageRequest(pageIndex_,objectsPerPage_,newSort(orders))将它用于返回少于10个结果的查询时,结果列表为空。这是我在服务层使用存储库的方式:repository.findAll(MySpecification.searchClients(cri

java - Hibernate - 在 OneToMany 上使用 JOIN 时 sqlQuery 映射冗余记录

我在2个实体(Entity1到Entity2)之间有@OneToMany关联。我的sqlQueryString包括以下步骤:selectent1.*,ent2.differ_fieldfromEntity1asent1leftouterjoinEntity2asent2onent1.item_id=ent2.item_id添加一些子查询并将结果写入some_field2、some_field3等。执行:QuerysqlQuery=getCurrentSession().createSQLQuery(sqlQueryString).setResultTransformer(Transfo

java - 发生 org.hibernate.exception.GenericJDBCException : Could not open connection for long running process

在我的应用程序中,我为一项工作使用了20个线程。每个线程调用远程Web服务并更新Oracle数据库。Jboss重启后,作业无法更新数据库,除了我在日志中发现的异常:2017-11-0823:36:20,706ERROR[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](EJBdefault-21)javax.resource.ResourceException:IJ000460:Errorcheckingforatransaction2017-11-0823:36:20,706ERROR[org.jboss.as.ejb3](EJBde

java - 如何在 hibernate 中对关联表进行排序?

给定两个实体通过连接表连接的数据库表的表示,是否可以通过注释以某种方式指定排序顺序的另一个实体进行排序?粗略地考虑以下数据库表:actor(id,name)credit(actorId,movieId,roleName)movie(id,title,year)和hibernate实体如:@EntityclassActor{@IdIntegerid;@ColumnStringname;@OneToMany@JoinColumn(name="actorId")Listcredits;}@EntityclassCredit{@ColumnStringroleName;@ManyToOne@J

java - 如何在 Hibernate 中对延迟加载的集合使用二级缓存?

假设我有两个实体,Employee和Skill。每个员工都有一套技能。现在,当我通过Employee实例延迟加载技能时,缓存不会用于Employee不同实例中的技能。让我们考虑以下数据集。Employee-1:Java,PHPEmployee-2:Java,PHP当我在Employee-1之后加载Employee-2时,我不希望hibernate访问数据库来获取技能,而是使用缓存中已有的Skill实例。这可能吗?如果是怎么办?hibernate配置com.mysql.jdbc.Driverpassjdbc:mysql://localhost/cacherootorg.hibernate

java - Hibernate 条件查询以匹配所有子集合元素

这个问题与thisone非常相似但对这个问题的回答很少。我有一个带有一组子实体的父类。子实体只是字符串的包装器,与父实体位于不同的表中。我想要一个条件查询,当子实体集的所有成员都返回true到条件时返回父实体。此条件匹配字符串列表之一。这是我所在的位置:Criteriac=criteria();Criteriaands=c.createCriteria("ands");Disjunctiondis=Restrictions.disjunction();for(Stringvalue:values){dis.add(Restrictions.like("value","%"+value+