添加数据后,实体管理器未获取子记录

时间:2016-10-20 08:11:28

标签: spring-mvc jpa jpa-2.0 hibernate-entitymanager

我正在使用实体管理器将数据保存到数据库中。数据插入成功,但是当尝试获取数据时,它不会获取子数据。

Incident.java

@Entity
@Table(name = "Incident")
public class Incident {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "incidentID")
    private Integer incidentID;

    @Column(name = "incidentTitle")
    private String incidentTitle;

    @Column(name = "date")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date incidentDate;

    @Column(name = "incidentContent")
    private String incidentContent;

    @ManyToOne
    @JoinColumn(name = "countryID")
    private Country country;

    // Getter and setters

}

Country.java

@Entity
@Table(name="Country")
public class Country {
    @Id
    @Column(name="id")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int id;

    @NotNull
    @Column(name = "name")
    @Size(min = 8, max = 100)
    private String name;
    // getter and setters
}

DAO.java

public Incident addIncident(Incident incident) {
            em.getTransaction().begin();
            em.persist(incident);
            em.flush();
            em.getTransaction().commit();
            return incident;

    }

当我将数据添加到事件表中时,countryId已成功添加但当我尝试获取相同的记录时,countryId会出现,但名称不会出现。

但是当我尝试更新相同的记录或退回服务器或重新部署应用程序时,所有数据都会与名称一起成功。

无法理解这个问题。

你能帮我吗?

0 个答案:

没有答案