xml方式,直接写就行,hibernate会直接帮你生成:

javaBean代码片段:

private boolean leaf;
    public boolean isLeaf() {
        return leaf;
    }
    public void setLeaf(boolean leaf) {
        this.leaf = leaf;
    }

hbm.xml配置直接写就行:

<property name="leaf"></property>

测试里代码:

//s.setLeaf(true);
s.setLeaf(false);

数据库结果:true会存入1,false存入0。

Annotation方式:

定义boolean类型属性为:private  boolean   isLeave;

JavaBean代码片段:

boolean类型自动的get、set为:

private boolean isLeave;
public
boolean isLeave() { return isLeave; } public void setLeave(boolean isLeave) { this.isLeave = isLeave; }

这样hibernate是不认识的,hibernate里,属性名必须和set、get方法名一致,所以需要修改方法名:

    private boolean isLeave;
    
    /**
     * 如果不写@Type(type="yes_no")默认存入true  1 false  0
     * @return
     */
    //修改自动生成的get方法isLeave()为getIsLeave
    @Type(type="yes_no")
    public boolean getIsLeave() {
        return isLeave;
    }
    //把自动生成的set方法:setLeave改为:setIsLeave
    public void setIsLeave(boolean isLeave) {
        this.isLeave = isLeave;
    }

测试代码片段:

//t.setIsLeave(false);
t.setIsLeave(true);

数据库结果:0、1是默认时的结果,Y、N是@Type(type="yes_no")的结果:

Ok。

 

 欢迎关注个人公众号一起交流学习: