如何在休眠中设置布尔值?

时间:2011-06-13 09:20:39

标签: hibernate

这是豆,

public boolean paid;
public boolean isPaid()
{
    return paid;
}
public void setPaid(boolean paid)
{
    this.paid=paid;
}

但是当我创建一个要保存在数据库中的对象时,

CourseFee费用=新课程费用(); fee.setPaid(假); hibernateTemplate.save(费);

我得到以下异常,

java.sql.BatchUpdateException:对于第1行的“付费”列,数据太长

在hibernate中设置布尔值的正确方法是什么?

3 个答案:

答案 0 :(得分:11)

我用这种方式。

@Column(name="isAdmin", columnDefinition = "tinyint default false")
public boolean isAdmin() {
   return admin;
}

答案 1 :(得分:5)

我没有成功使用默认值。它编译但从未使用默认值。

我遵循了以下步骤:

  • 提出类声明

      

    @DynamicInsert   @DynamicUpdate

  • 放置属性

      

    @Column(     nullable = false,     columnDefinition =“BOOLEAN DEFAULT false”
      )

参考:http://www.mkyong.com/hibernate/hibernate-dynamic-insert-attribute-example/

答案 2 :(得分:3)

尝试在POJO课程中使用大Boolean

或尝试更新您的映射:

<property name="paid" not-null="true" >
   <column sql-type="BOOLEAN" not-null="true" name="paid" />
</property>

感谢。

相关问题