我需要帮助在java类中为这些关系表创建映射Hibernate注释(一对一):
CREATE TABLE book
(
id_book integer NOT NULL,
isdn character varying(10) NOT NULL,
CONSTRAINT "pk_bookId" PRIMARY KEY ("id_book")
)
CREATE TABLE info
(
id_info serial NOT NULL,
title character varying(200),
author character varying(200),
id_book integer NOT NULL,
CONSTRAINT info_pkey PRIMARY KEY ("id_info"),
CONSTRAINT "info_id_book_fkey" FOREIGN KEY ("id_book")
REFERENCES book ("id_book") MATCH SIMPLE
ON UPDATE CASCADE ON DELETE NO ACTION,
CONSTRAINT "info_id_book_key" UNIQUE ("id_book")
)
有人能帮我吗?谢谢你。
您可以在这两个实体之间创建一对一关系,如下所示。
@Entity
@Table(name = "book")
class book{
private int id;
private String isdn;
private Info info;
@Id
@Column(name="id_book", unique=true, nullable=false)
@GeneratedValue
public int getId(){
return this.id;
}
@Column(name="isdn")
public String getIsdn(){
return this.idsn;
}
public void setId(int id){
this.id = id;
}
public void setIsdn(String isdn){
this.isdn = isdn;
}
@OneToOne
@PrimaryKeyJoinColumn
public Info getInfo(){
return this.info;
}
public void setInfo(Info info){
this.info = info;
}
}
@Entity
@Table(name = "info")
class Info{
private int id;
private String title;
private String author;
private Book book;
@Id
@Column(name="id_info", unique=true, nullable=false)
@GeneratedValue
public int getId(){
return this.id;
}
@Column(name="title")
public String getTitle(){
return this.title;
}
public void setId(int id){
this.id = id;
}
public void setTitle(String title){
this.title = title;
}
@OneToOne(mappedBy="info", cascade=CascadeType.ALL)
public Book getBook(){
return this.book;
}
public void setBook(Book book){
this.book = book;
}
public void setAuthor(String author){
this.author = author;
}
@Column(name="author")
public String getAuthor(){
return this.author ;
}
}
我有两个不同的表,Person表和Employee表。我需要这两者之间的一对一映射。Employee表的emp_id引用Person表的person_id。在使用注释编写映射方面我需要一些帮助
我有两个表:人员和帐户(一对多关系)。 这不是我第一次使用一对多关系,但我以前没有遇到过这个错误。 完整的StackTrace:
我想使用联接表在两个表之间建立一对多关系。 这就是为什么我想使用联接表: Hibernate单向一对多关联-为什么连接表更好 最后,我想使用Hibernate注释来执行此操作。 我找到了一些使用xml映射实现这一点的示例,但没有使用注释。 我相信这将是如何创建表需要
我有一个包含三个字段的表,比如a、b、c。我想添加一个约束,确保如果a不为null,那么b和c也不为null。我已经使用以下SQL完成了这项工作 使用hibernate注解@Check有没有办法达到同样的效果? 我找不到一个有用的注释示例,开发人员倾向于根本不使用它吗?
问题内容: 我有以下带注释的Hibernate实体类: 我的意图是在Cat和Kitten之间建立双向的一对多/多对一关系,Kitten是“拥有方”。 我想发生的事情是,当我创建一个新的Cat,然后是一个引用该Cat的新 小猫时,我Cat上的这组小猫应该包含新的Kitten 。但是,在以下测试 中不会发生这种情况 : 即使在重新查询Cat之后,集合仍然为空: 我在这里对Hibernate期望过高吗?
问题内容: 我正在尝试将Hibernate 4仅用于注释和一个文件。我做了自己的注释,并使用反射将其添加到配置中。我可以用这种方式很好地使用Hibernate 4,但是我的配置是使用不推荐使用的方法构建的。 (不建议使用的代码:)。 甚至hibernate 4文档也显示以这种方式构建配置。 如果我尝试使用新方法(,则不会得到相同的结果,并且似乎很多不必要的代码可以完全执行不推荐使用的方法。但是,我