Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
Postgresql JPA加载相关实体不会修复对象引用_Postgresql_Jpa_Eclipselink - Fatal编程技术网

Postgresql JPA加载相关实体不会修复对象引用

Postgresql JPA加载相关实体不会修复对象引用,postgresql,jpa,eclipselink,Postgresql,Jpa,Eclipselink,我在postgresql数据库上有以下表格: CREATE TABLE person ( id bigint NOT NULL, name character varying(100) NOT NULL, CONSTRAINT pk_person PRIMARY KEY (id) ) CREATE TABLE phone ( id bigint NOT NULL, number character varying(10) NOT NULL, person_id bigi

我在postgresql数据库上有以下表格:

CREATE TABLE person
(
  id bigint NOT NULL,
  name character varying(100) NOT NULL,
  CONSTRAINT pk_person PRIMARY KEY (id)
)

CREATE TABLE phone
(
  id bigint NOT NULL,
  number character varying(10) NOT NULL,
  person_id bigint NOT NULL,
  CONSTRAINT pk_phone PRIMARY KEY (id),
  CONSTRAINT fk_phone_person FOREIGN KEY (person_id)
      REFERENCES person (id) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
)
我希望有以下java实体:

public class Person {
    ...
    private Long id;
    private String name;
    private List<Phone> phones;
    ...
    // constructors
    // getters and setters
}

public class Phone {
    ...
    private Long id;
    private String number;
    private Long personId;
    private Person person;
    ...
    // constructors
    // getters and setters
}
公共类人物{
...
私人长id;
私有字符串名称;
私人名单电话;
...
//建设者
//接球手和接球手
}
公用电话{
...
私人长id;
私有字符串编号;
私人长人形;
私人;
...
//建设者
//接球手和接球手
}
我通过Eclipse基于数据库创建了实体,但是在Phone类中,它没有生成我想要的personId字段,我已经创建了这个字段/getters/setters,并设法让它工作以保存person及其电话

我这里的问题是,当我通过id找到一个人时,它会带来相关的电话,相关的电话带有personId/person字段null。我所期望的是JPA将我的手机指向它的父person对象实例

可能吗?这不应该是默认行为吗?这是配置问题吗


提前谢谢。

发布JPA映射而不是db表会更有用。发布JPA映射而不是db表会更有用。