JPA

java – JPA @Id和insertable = false,updatable = false抛出异常

我的想法是:我想禁止JPA插入或更新caseId.1)什么是正确的洗液?我应该只使用@Id:或更好(更安全)定义insertable=false:2)我理解@Id的updatable=false没有意义,但它是什么意思:编辑2012-04-13我做了一些测试:实体JPA日志所以这不安全,因为JPA尝试存储CASE_ID.实体创建方法JPA日志这很好,因为CASE_ID不是insert命令的一部分.由于注释ID,因此无法更新CASE_ID:所以现在最后一个版本看起来最安全,对吧?

java – 如何将多个字段指定为实体的主键(使用JPA)

或者它是创建自动生成的id并使用@Id注释的唯一方法解决方法对的,这是可能的.复合主键由多个主键字段组成.每个主键字段必须是JPA类型支持的字段之一.对于你的桌子,你有:对于具有多个密钥的实体,JPA需要定义特殊的ID类.应使用@IdClass注释将此类附加到实体类.ID类反映主键字段,其对象可以表示主键值

java – JPA 2.0 / Hibernate:为什么LAZY使用“@OneToOne”开箱即用?

我非常感谢您提供的任何帮助非常感谢!解决方法延迟加载OnetoOne关系的问题仅在于它的反向部分.它在关系的拥有方面运作良好.他们之间的差异在数据库层面是明确的.在您的情况下,问题是用户数据库表是否将AvatarImage的id作为其中一列或相反的方式.如果User表有一个id为AvatarImage的列,那么延迟加载将像你说的“开箱即用”一样工作,但它不会反过来工作.

jpa使用注解生成表时无外键问题及解决

这篇文章主要介绍了jpa使用注解生成表时无外键问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

java – 在JPA Criteria API中使用子查询中的ORDER BY有哪些替代方法?

考虑以下两个表:>项目>状态Status包含项目所在的所有状态.让我们说我们想要查询最新状态名为“new”的所有项目.我想出的SQL查询是:我正在尝试使用CriteriaAPI复制上述查询,我注意到类CriteriaQuery的方法为orderBy,但类Subquery没有.我到目前为止提出的标准查询是:我被困在这里,因为Subquerysq没有任何方法可以对结果进行排序并只返回最新的结果.排序子查询以便在上述场景中获得所需结果的替代方法是什么?解决方法可以使用SELECTMAX而不是SELECTTOP1

java – JPA:我应该使用orm.xml清理我的实体类吗?

我目前只使用JPA注释,但我真的不喜欢我用这么多ORM细节污染我的实体类,这些细节实际上与它们的行为无关(例如表名,id生成策略,连接列……它会从我的实体课程中消除一些污染,还是会遇到问题?