1.注解 2.类的字段名不能是MySQL的关键字,如describe 3.必须有一个主键 4.一对多怎么关联 mappedBy
@Entity@Table(name = "t_collect_line")public class CollectLine { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) PRivate Long id;//主键 @Column(name = "remark", length = 300) private String remark;// 采样线路描述 @ManyToOne(cascade = { CascadeType.MERGE, CascadeType.REFRESH }, fetch = FetchType.EAGER) @JoinColumn(name = "area_id") private Area area;// 区域,在表中该列名为area_id}@Entity@Table(name = "t_area")public class Area extends BaseTreeEntity<Long> { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private Long id;//主键 //mappedBy中的area和CollectLine类中的字段名area相对应 @JSONField(serialize = false) @OneToMany(cascade = { CascadeType.REFRESH, CascadeType.PERSIST, CascadeType.MERGE }, mappedBy = "area", fetch = FetchType.LAZY) private Set<CollectLine> collectLines = new HashSet<CollectLine>();// 采集线路}一对多的时候要用@JoinColumn(name = “area_id”) ,否则会出现如下异常
mappedBy是定义在一表中,对应多表中的字段名,否则会出现如下异常 mappedBy reference an unknown target entity property
新闻热点
疑难解答