Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate注释一对一_Java_Hibernate_Hibernate Annotations - Fatal编程技术网

Java Hibernate注释一对一

Java Hibernate注释一对一,java,hibernate,hibernate-annotations,Java,Hibernate,Hibernate Annotations,我需要帮助在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 varyin

我需要帮助在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 ;
 }


}

在这些之上写注释需要什么?Java类中的注释,例如@OneToOne.getInfo返回void?类型属性info为String?@django,getInfo返回InfoWhy@PrimaryKeyJoinColumn?信息不是PK。我不明白链接。不管怎样,它是@Code\u Cracker,谢谢。现在我有另一个错误,但我将提出另一个问题。