问题内容: 我正在使用hibernate-entitymanager 3.6.4.Final和h2数据库1.3.155 我正在使用H2Dialect。 我在按@ElementCollection中的元素过滤记录时遇到麻烦。这是我的实体 这是我的查询: 这是错误消息: 这很奇怪,因为这里的文档中提供了KEY()和VALUE()函数 我是否缺少某些配置?任何的想法 ? 提前致谢 问题答案: 我有完全一
问题内容: 您实体的ID是 长 (原始类型)还是 长 (对象类型)? 该ID是表的主键,在数据库中从不为“ null”。 我的同事建议使用“对象类型长”。 默认情况下,Hibernate反向工程工具会生成一个长为id的基本类型。 选择什么? 长还是长? 问题答案: 我认为使用Long更好,因为通过检查该值来检查实体是否具有持久身份是更正确的(在MySQL中,您可以将ID设置为0)。另外,像Spri
问题内容: 有没有办法使用JPA映射不可变的Value对象(例如电子邮件地址)? 现在我在实体保存上出现异常 我想使用final字段并将其hibernate为JPA实现。 问题答案: 您将无法使用标准JPA注释和可嵌入对象来执行此操作,因为必须使用默认构造函数创建该对象,并且必须通过反射来设置该值。 但是,您可以使用Hibernate自定义类型。阅读Hibernate参考文档的这一部分,那里有一个
问题内容: 在hibernate状态下使用@formula是否有其他解决方案?我需要通过jpa使用它,例如: 问题答案: 您可以结合使用注释和一种方法
问题内容: 我和用户与GameMap之间存在一对多的关系。一个用户可以拥有许多地图。 用户类别: 但是,有时我需要急于加载地图。为了避免在关闭Session后出现 LazyInitializationException ,我有两种检索Users的方法。 用户存储库: 问题: 但是, 如果表中没有该用户的映射 ,那么JPQL JOIN FETCH变体希望一次加载该用户,并且他的映射返回NULL用户。
问题内容: 我在Hibernate 3.6.x中使用JPA2 我对@Version进行了简单测试。 假设我们有2个实体, 实体团队具有玩家实体列表,双向关系,惰性获取类型,级联类型全部 两个实体都有@Version 这是场景: 每当对团队/球员实体之一进行修改时,刷新/提交时,团队/球员的版本就会增加(修改后的记录的版本会增加)。 使用persist将新的球员实体添加到团队的集合中,将在persi
问题内容: 因为调用flush()获取每个实体都从内存持久到数据库。因此,如果我使用过多的不必要的flush()调用,可能会花费很多时间,因此对于性能而言不是一个好的选择。这是一种我不知道何时调用flush()的情况? 我的问题是:是否可以避免调用No.1同花顺? 我担心的事情是:为了执行 item.setOrder(ord) ,我们需要ord的数据库ID。而且仅调用 em.persist(ord
问题内容: 我正在尝试使用Hibernate作为提供程序将Web应用程序的JDBC代码更改为JPA。我正在使用Eclipse IDE。在那我已经定义了一个MySQL数据源。我在persistence.xml中添加了它。但是,我收到以下错误。 我的persistence.xml看起来像, 有什么建议么!!!提前致谢! 问题答案: 在中配置数据源时,您不需要。在应用程序服务器配置中配置数据源并通过JN
问题内容: 我有一个基于Seam 2.2的Java EE 5 Web应用程序,其中有一堆表通过Hibernate 3.3.3映射到JPA 1.0实体。在开发过程中,它在Tomcat 6,Oracle 10 XE和Windows 7上运行。 现在,运营部门提出了将数据模型拆分为一个模式(该模式是所有数据库对象的所有者)和一个充当应用程序的数据库用户的模式的请求。所以我做了以下事情: 创建模式 授予对
问题内容: 我试图将数据插入到具有表列 (名称,值) 与 并得到以下异常: 另外,我也不能使用本机查询插入记录: 抛出另一个异常: 问题是: 查询字符串有什么问题? 非常感谢。 问题答案: 我解决了这个问题。 根据此, JPA中没有INSERT语句。 但是我可以用本机查询解决这个问题:我错误地放置了一个多余的;在查询末尾,因此可以通过将其删除来解决问题。
问题内容: 我正在尝试将Postgres自定义类型(名为transmission_result)映射到Hibernate / JPA POJO。postgres自定义类型或多或少是字符串值的枚举类型。 我创建了一个名为PGEnumUserType的自定义EnumUserType以及一个表示postgres枚举值的枚举类。当我对一个真实的数据库运行它时,我收到以下错误:’ERROR:列“状态”的类型
问题内容: 在Spring Data JPA(+ Hibernate)应用程序中考虑以下类: 我最常见的用例涉及调用以下方法(从继承): 每当调用此方法时,Hibernate都会发出以下SQL查询: 每当执行此查询时,我只对类中的公共字段感兴趣,因此我发现左外部联接无用。 问题在于,在我们的实际应用程序中,每个子表中都有8个子类,例如和和以及数百万条记录,这导致父表上的查询运行非常慢。 在这种情况
问题内容: 我正在尝试在JPA中使用悲观锁定,而不是针对Postgres数据库使用Hibernate 3。我无法超时锁定-它似乎永远挂着。 这是一个例子: 据我了解,em2应该尝试长达五秒钟(5000毫秒)来获取锁,然后应该抛出异常。而是代码陷入僵局。 如果我在两个不同的线程中运行它,那么我会看到线程2(带有em2)在线程1(em1)释放它后立即获得了锁。因此锁定正在发生,只是永不超时。 我用PE
问题内容: 我在父子关系中使用javax.persistence.OneToMany关系。父ID为null,我已经阅读了Stackoverflow中的所有相关文章,但没有得到我所缺少的任何线索。 根据提供的序列,所有对应的PK都填充在父表和子表中,但是FK在子表中设置为null 家长班: 儿童班: 服务等级: 样本json 请提出建议。 问题答案: 通常,空FK列仅来自设置关系的一侧。 我想你有以
问题内容: 我尝试使用 多个线程 持久化对象时遇到问题。 细节 : 假设我有一个对象,该对象具有(一对多关系)列表,并且又包含(一对多关系)列表。 由于数量庞大(以十万计),我基于(基于某些业务逻辑)将其分组,并创建了 WORKER 线程(每个PaymentGroup一个线程)以形成对象并提交到数据库中。 问题是,每个工作线程都创建一个(包含唯一的一组)。 所有实体的主键都是自动生成的。 因此,存