我有三个表,一个主表 MAIN_TB 具有表 TCHARS 和 TSTATUSES 的外键,当我坚持 MAIN_TB 时,重新查询并显示保存的记录,连接的列(来自 TCHARS 的 tchars 和来自 TSTATUSES 的 t_status)为空,但数据已保存. 我能错过什么?
表 MAIN_TB
@JoinColumn(name = "T_STATUS", referencedColumnName = "T_STATUS")
@ManyToOne
private Tstatuses tStatus;
@JoinColumn(name = "T_CHAR", referencedColumnName = "T_CHAR")
@ManyToOne
private Tchars tChar;
表 TCHARS
@OneToMany(mappedBy = "tChar")
private Collection<MainTb> mainTbCollection;
表 TSTATUSES
@OneToMany(mappedBy = "tStatus")
private Collection<MainTb> mainTbCollection;
代码
public void saveMainTb(){
MainTb mainTb = new MainTb();
Tchars tchars = new Tchars();
Tstatuses tstatuses = new Tstatuses();
tchars.setTChar(new Short("1"));
mainTb.setTChar(tchars);
tstatuses.setTStatus(new Short("1"));
mainTb.setTStatus(tstatuses);
mainTb.setTName("test");
em.persist(mainTb);
}
结果
![Result][1]
任何帮助,将不胜感激