我想知道是否可以更改或设置将对象映射到Mysql时冬眠所做的表结构的值。
我的问题是我是否具有此实体类:
@Entity
@Table(name="user_table")
public class User {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
@Column(name="name")
@Basic(optional=false)
private String name;
private String adress;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAdress() {
return adress;
}
public void setAdress(String adress) {
this.adress = adress;
}
}
默认情况下使用此模式休眠创建表,但我的意思是[name]列是使用[VARCHAR(255)]创建的,因为我将其更改为例如[VARCHAR(50)]
注意:
我尝试使用== @Type(type =“ varchar(50)”)
OR
@Type(type =“ varchar-50”)
但是没有用!!!
有什么帮助吗?
答案 0 :(得分:0)
设置长度应该可以解决问题
@Column(name="name", length = 50)
@Basic(optional=false)
private String name;
默认长度为255。