最近做一个小项目,为了方便想要用到1对多或者多对一的方式,由于用的是注解,出现了这样一个问题,新加的多对一的字段数据库不识别,报错字段不识别。
我调适了很久
终于找到了问题所在,那就是用注解注释的方法配置多对一的时候数据库会自动去表中匹配字段,因为message在数据库中没有这个字段,所以报错。这时候就需要加上@Transient来标注这个字段不配数据库匹配、、、
private Long usermessageid;
private Long userid;
private Long senderid;
private Long receiverid;
private short readstatus;
private short sendstatus;
private short receivestatus;
@Transient
private Message message;
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="MessageId")
public Message getMessage() {
return message;
}
public void setMessage(Message message) {
this.message = message;
}
public Long getUserid() {
return userid;
}