如何在Hibernate批注中创建Tinyint字段

哈里:

我在使用Hibernate在MySQL数据库中创建tinyint字段时遇到问题。

我以前是这样写Entity类的

@实体

@Table(name =“ tablename”)

公共类MyEntity {

private int id;

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="id")
public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

}

当我检查MySQL时,id字段始终以Integer(11)结尾,如何将其设置为TinyInt?

任何答案将不胜感激

根纳季(Nennadiy):

我认为有几种方法可以做到这一点。第一种是使用@Column批注上的columnDefinition属性来读取如下内容:

@Column(name = "id", columnDefinition = "TINYINT")

这不能跨数据库移植,并且与变量本身为int不能很好地保持一致。这里可能需要一个字节或短字节

另一种方法是使用@Type批注,可能与org.hibernate.type.ByteType一起使用,因为它似乎代表了TINYINT(指向javadoc的链接)。

我希望这有帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章