草庐IT

title_select_query_result

全部标签

java - JPA Criteria query eager fetch associated entities using a SINGLE query with join 而不是多个查询

在将hibernate从4.3.11升级到5.2.12的范围内,我们正在从Hibernatenative标准查询迁移到JPA标准查询,并发现了不同的行为。以前的hibernate条件使用带有连接的单个查询来急切地获取一对多关联实体,但JPA使用单独的查询来获取每个根实体的关联实体。我知道我可以像entityRoot.fetch("attributes",JoinType.INNER);那样显式设置获取模式,但我们需要在一些AbstractDao实现中完成它,它应该适用于任何急切的人-对多关联,因此不能显式设置。那么我能否以某种方式告诉JPA标准,以便在默认情况下使用连接而不是针对每个根

java - Hibernate 多态 HQL SELECT 语句

我正在使用Hibernate注释来持久化我的类。目前我正在使用以下策略来映射类我有一个抽象类,它是父类,我有两个继承自它的子类爸爸妈妈。我是这样映射的:@MappedSuperclasspublicabstractclassParent{privateintage;privateStringname;...}另外两个类是这样声明的:@EntitypublicClassFatherextendsParent{privatebooleanhaveMustash;...}所以基本上场景是“每个类一个表”。现在我想创建一个HibernateHQL语句来更新parent的年龄,无论其类型如何(母

java - 命名 Hibernate 查询的 "Named query not known"?

可能是什么问题?@Entity@NamedQueries({@NamedQuery(name=User.ALL,query="SELECTuFROMUseru")})publicclassUser{publicstaticfinalStringALL="User.all";}publicclassService{find...with...User.ALL}堆栈跟踪:Causedby:org.hibernate.MappingException:Namedquerynotknown:User.allatorg.hibernate.impl.AbstractSessionImpl.get

java - 谷歌应用引擎 (Java) 任务队列 API : how to query number of running/pending tasks?

是否可以通过编程方式查询任务队列API以查看当前有多少任务正在执行/待处理?我在API中看不到任何执行此操作的方法,因此我求助于在数据存储区中创建对象来表示排队的任务。运行时,任务会从数据存储中删除相应的条目。如您所想,这很容易不同步。实际上,如果能够简单地计算给定队列名称的队列中的任务数量,我会非常高兴。 最佳答案 遗憾的是,没有可用于获取有关任务队列的信息的API。但是,我相信团队在未来会考虑到这一点(一个用于获取我们当前在仪表板上看到的统计信息的编程接口(interface),例如任务计数)。

java - 是否可以在 Spring Data JPA 中将 @Lock 与 @Modifying @Query 与 Hibernate 结合使用?

在将@Lock注释与@Modifying@Query一起使用以及查询本身执行更新语句时,我遇到了问题。我的测试设置如下所示:SpringBootStarter1.5.3.RELEASEhibernate5.2.10.FinalSpringDataJPA1.11.3.RELEASE测试的数据库:H2、PostgreSQL、MariaDB、Oracle示例实体:importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.Id;importjavax.persistence.Tab

java - 获取结果集() "should be called only once per result"

根据documentation对于java.sql.Statement中的getResultSet,它说:RetrievesthecurrentresultasaResultSetobject.Thismethodshouldbecalledonlyonceperresult.使用一些测试代码,我运行了executeQuery()并多次调用getResultSet()并观察到返回的ResultSet指向同一个对象。所以我猜它不会返回您需要单独关闭的不同ResultSet。但当然,这可能是我的JDBC驱动程序所独有的。查看documentation对于ResultSet它说:Adefau

java - JPQL:SELECT NEW 查询中的枚举文字

我有一个用于几个域类的描述符类。描述符类有一个字段“type”,它是一个枚举,表示域类的类型。在某些查询中,我想返回一个或多个描述符并将类型作为构造函数参数传递。所以我的想法是将它作为查询参数传递:Stringjpql="SELECTNEWmodel.ModelDescriptor"+"(t.id,t.name,t.description,:modelType)...";TypedQueryquery=em.createQuery(jpql,ModelDescriptor.class);query.setParameter("modelType",ModelType.forClass(

java - netbeans 7.0 在 Struts2 select 标签中显示错误..netbeans 6.9 版不显示此错误

这个问题在这里已经有了答案:Struts2#{}givingcompilationerrorinNetbeans7.3(1个回答)关闭5年前。headerKey=""headerValue="PleaseSelect"emptyOption="false">报错信息如下Encountered":"atline1,column9.Wasexpectingoneof:"}"..."."..."]"...">"..."

Java : How to return intermediate results from a Thread

使用Java7我正在尝试构建一个监视数据存储(某种集合类型)的观察者,然后在某些时候从中返回某些项目。在这种情况下,它们是时间戳,当时间戳超过当前时间时,我希望它返回到起始线程。请看下面的代码。@Overridepublicvoidrun(){while(!data.isEmpty()){for(LocalTimedataTime:data){if(newLocalTime().isAfter(dataTime)){//returnaresultbutcontinuerunning}}}}我读过有关future和callables的内容,但它们似乎会在返回时停止线程。如果使用可调用,我

java - Spring 命名参数 : how can I parameterize Oracle interval in my query?

我在尝试对Oracle查询中的间隔参数进行参数化时遇到问题:selectcurrent_timestamp-interval:hourshourfromdual如果我用常量替换间隔参数,那么它执行得很好。尝试在SQL中引用和不引用参数。请参阅下面使用最小片段的插图:publicclassMain{privatestaticStringSQL_CONSTANT_INTERVAL="selectcurrent_timestamp-interval'1'hourfromdual";privatestaticStringSQL_PARAMETERIZED_INTERVAL_QUOTED="se