HIbernate與不支持boolean的數據庫之間的映射

时间:2025-03-11 17:33:20

http://soft-development.iteye.com/blog/1225274

——————————————————————————————————————————————————————————————————————————————

    1.JPA本身是不支持boolean。可以用Hibernater自带的标签.修改如下.  

    @Column(name = "manager_log")
@org.hibernate.annotations.Type(type="yes_no")
private boolean manageLog = false; // 能否管理系统日志 2.当然你也可以不用Hibernater的标签,但要改写setter,getter方法 给你一个例子:
@Entity
public class User {
@Id
private Integer id; @Basic
private Character enabled; public Boolean getEnabled() {
if (enabled == null) return null;
return enabled == 'Y' ? Boolean.TRUE : Boolean.FALSE;
} public void setEnabled(Boolean enabled) {
if (enabled == null) {
this.enabled = null;
} else {
this.enabled = enabled == true ? 'Y' : 'N';
}
}
}