2011-06-13 43 views
1

这是豆,如何在休眠状态下设置布尔值?

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

但是,当我创建一个对象在数据库等保存,

CourseFee费=新CourseFee(); fee.setPaid(false); hibernateTemplate.save(费用);

我得到下面的异常,

java.sql.BatchUpdateException:数据太长,列“支付”在第1行

这是在休眠设定布尔值的正确方法是什么?

回答

3

尝试在您的POJO课程中使用大Boolean

或者尝试更新你这样的映射:

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

感谢。

+0

我仍然得到同样的异常。 – elle 2011-06-13 09:29:42

+2

一般来说,在处理Hibernate时避免原语是个好主意。 – Yuval 2011-06-13 09:37:52

+0

你能分享你的班级地图吗? – nIKUNJ 2011-06-13 09:48:25

11

我用这种方式。

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