java hibernate eclipse xml-使用不带主键的实体
我有一个问题,如果我们在数据库中创建任何表,即没有任何主键(所有列的值都可以为null) 在使用Hibernate时,我们不能在Hibernate O/R映射(即hbm.xml文件)中没有ID字段的情况下进行映射 我面临的问题是没有ID字段的.hbm.xml文件没有得到验证java hibernate eclipse xml-使用不带主键的实体,java,hibernate,Java,Hibernate,我有一个问题,如果我们在数据库中创建任何表,即没有任何主键(所有列的值都可以为null) 在使用Hibernate时,我们不能在Hibernate O/R映射(即hbm.xml文件)中没有ID字段的情况下进行映射 我面临的问题是没有ID字段的.hbm.xml文件没有得到验证 我从大家那里得到了答案,但我有一个问题,我们可以在实体类中使用ID变量前缀的瞬态关键字,这样就不会将该值持久化到数据库中吗?唯一真正的解决方案是修复损坏的数据模型。没有主键的实体不是关系数据,因此您不能期望ORM产品能够知道
我从大家那里得到了答案,但我有一个问题,我们可以在实体类中使用ID变量前缀的瞬态关键字,这样就不会将该值持久化到数据库中吗?唯一真正的解决方案是修复损坏的数据模型。没有主键的实体不是关系数据,因此您不能期望ORM产品能够知道如何处理它 在没有主键或唯一标识行的情况下,Hibernate将如何执行更新
谢谢。在hibernate中不能这样做。你无论如何也不应该这么做。数据库警告您,不建议使用主键 如果确实没有形成唯一键的一组列,则有两个选项:
- 添加自动递增主键(首选)
- 使用原始JDBC从该特定表获取数据。您可以使用hibernate的
方法来实现这一点session.doWork(..)