我正在尝试在Hibernate中映射tinyint(1)列。对于需求,我需要在列中保存值“2”,但我无法更改它的sql类型。 如果我在我的类中将它声明为Integer,则hibernate验证失败。如何使验证工作并使用int或byte列来保存值2?
这是我的代码:
<property name="flag" type="java.lang.Integer">
<column name="flag" not-null="true" sql-type="TINYINT"/>
</property>
我需要将值2保存到标志列
答案 0 :(得分:0)
尝试
sql-type="BIT"
代替
sql-type="TINYINT"
答案 1 :(得分:0)
只需执行以下声明 -
<manifest>
实际上有些框架将tinyint(1)视为boolean类型意味着只接受0和1甚至tinyint可以处理最多127个有符号和最多255个无符号值。
根据mysql,tinyint(1)与tinyint或tinyint(4)相同,但这是框架属性,将tinyint(1)视为布尔值,将tinyint(2)或tinyint视为普通整数。