当前位置: 首页 > 知识库问答 >
问题:

如何使用Hibernate联接列?

倪培
2023-03-14

我有两个类和它们之间的关系。我不明白问题出在哪里。我用下一种方式写代码

 public class Abiturient {

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name = "id", nullable = false, unique = true, length = 11)
        private Long id;

        @ManyToOne(fetch = FetchType.LAZY)
        @JoinColumn(name = "prizv_id")
        private Prisvishche abiturients_pr;

并映射了一个:

public class Prisvishche {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column
    private BigInteger prizv_id;

    @OneToMany(mappedBy = "prizv_id")
    private List<Abiturient> abiturients = new ArrayList();

共有1个答案

谭学名
2023-03-14

不能指向mappedby中的数据库列。您必须指向一个实体字段,它是关系的所有者,即:

 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "prizv_id")
 private Prisvishche abiturients_pr;

所以你拥有的一方应该是:

@OneToMany(mappedBy = "abiturients_pr")
private List<Abiturient> abiturients = new ArrayList();
 类似资料:
  • 我在Oracle SQL Developer中创建了三个表,即 。表是连接表,因为和之间的关系是。 在hibernate中,我为和表创建了两个hibernate类和, 和表在hibernate类中定义如下: 我用一些记录填充了表和,连接表自动填充了一些记录。现在我目前面临的问题是,我想使用hiberante在连接表上使用一个简单的选择语句,如下所示: 我怎么能做到这一点,尽管联接表'Employe

  • 嗨,我正在尝试使用左外部连接执行hql查询,它是thwhing异常作为org.hibernate.hql.ast.querysyntaxException:意外标记:在第1行附近,可以告诉我这个查询中有什么问题吗 从CreditCardDetails cred左外连接CustomerHistory custHist on cred.creditCardDetailSid=custHist.Cred

  • 假设我有一个名为的表,其字段为,和和,其字段为和。和表与列之间存在外键关系。 如果我在类中执行多对一注释映射,如何确保Hibernate使用LEFT OUTER JOIN加入关联实体?

  • 问题内容: 我有两个表和相关的Java映射。 这是我的Java实体。国家POJO: 和用户POJO: 问题是,我怎么能加入到在Hibernate中使用注释?当我使用Hibernate创建User对象时,我需要自动绑定这两个字段(代码和countryCode)。 问题答案: 您需要从映射到实体,并从映射到:

  • 问题内容: 我有两个实体:和。我正在使用Hibernate 3.6。 如何使用休眠标准实现这一目标,最重要的是,我必须将其用于分页。 而“我的道”如下所示以显示jqgrid中的“问题”列表 公共列表showHelpDeskIssues(DetachedCriteria dc,int from,int size){ 对于简短的解释,请参考此问题,如何使用struts2-jqgrid插件在jqgrid

  • 我想使用联接表在两个表之间建立一对多关系。 这就是为什么我想使用联接表: Hibernate单向一对多关联-为什么连接表更好 最后,我想使用Hibernate注释来执行此操作。 我找到了一些使用xml映射实现这一点的示例,但没有使用注释。 我相信这将是如何创建表需要

  • 问题内容: 我使用Hibernate批注具有如下关系,这是我尝试过的: 这样的事情在ManyToOne上效果很好,如下所示: 我想确保外键在PostgreSQL上被索引,并且架构在MySQL上看起来相似,因此@ForeignKey和@Index具有相同的名称(MySQL始终创建与FK具有相同名称的索引)。 我无法在反面创建索引,因为FileSystemLocation不了解这种关系。因此,Join

  • 问题内容: 如何在hibernate状态下使用层叠和注释? 但是我仍然怀疑: 我有这种情况: 当我尝试时,发生错误。我不想保存产品和包装。我只想初始化并将它们设置到我的包对象中。 那可能吗? 问题答案: 请参阅有关此问题的hibernate文档。例如,您可以使用例如 要么