1.生成框架时有没有改变domain中一对一的两个表的配置: app
正确的方式是:例如project的id和projectArtical中的projectId相关联,而project是主表,projectArtical是从表, 框架
而project的id配置和关联关系的配置要改为以下: dom
@Column(name = "ID", nullable = false)
@Basic(fetch = FetchType.EAGER)
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@XmlElement
Integer id; fetch
/**
*/
@OneToOne(mappedBy = "project", fetch = FetchType.LAZY)
@XmlElement(name = "", namespace = "")
ProjectArtical projectArtical; spa
projectArtical的projectId的配置和关联关系的配置改为以下: ip
@Column(name = "Project_ID", nullable = false)
@Basic(fetch = FetchType.EAGER)
@Id
@XmlElement
Integer projectId; io
切记要把用MyEclipse for Spring10.6自动生成的 cli
@PrimaryKeyJoinColumn
@OneToOne(fetch = FetchType.LAZY)
@XmlElement(name = "", namespace = "")
Project project; 配置
2.在保存一对一个的表,两表前后保存时,必须先保存主表而后保存副表,在保存主表的同时,必须先将主表的副表给先设置为空,例如project.setProjectArtical(null); 而后再保存projectArtical表。 map
然而在删除的时候必须先删除projectArtical表,再来删除project表。