【发布时间】:2020-01-07 00:12:18
【问题描述】:
是否可以加入 2 个具有不同列名的表? 这里是技能模型类
@Entity
@Table(name = "x_skill")
public class skillModel {
@Id
@Column(name="id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name="biodata_id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long biodataId;
@Column(name="skill_name")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private String skillName;
@Column(name="skill_level_id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long skillLevelId;
@Column(name="is_delete")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private boolean isDelete;
}
这是我的技能水平模型
@Entity
@Table(name = "x_skill_level")
public class SkillLevelModel {
private static final String ALL = null;
@Id
@Column(name="id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name="created_by")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long createdBy;
@Column(name="created_on")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Timestamp createdOn;
@Column(name="modified_by")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long modifiedBy;
@Column(name="modified_on")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Timestamp modifiedOn;
@Column(name="deleted_by")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long deletedBy;
@Column(name="deleted_on")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Timestamp deletedOn;
@Column(name="is_delete")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private boolean isDelete;
@Column(name="name")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private String name;
@Column(name="description")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private String description;
}
我尝试在技能模型中使用加入:
@ManyToOne
@JoinColumn(name="skill_level_id", referencedColumnName="id", nullable=true, updatable=false, insertable=false)
private SkillModel skm;
但我得到了java.lang.IllegalArgumentException: Can not set long field com.minipro207.model.SkillModel.deletedBy to null value.
顺便说一下,x_skill_level 的主键在 x_skill 的外键中被命名为 Skill_level_id。 谢谢你:)
【问题讨论】:
-
为什么每列都用这个注释:
@GeneratedValue(strategy = GenerationType.IDENTITY)? -
对不起我不知道,我是新手,我只是使用我的教练的代码。
-
我只是使用我的培训师提供的代码。。找一位新教练。
标签: java postgresql jpa spring-tool-suite