hibernate不给有默认值的字段赋值

来源:互联网 发布:ps软件怎么写字 编辑:程序博客网 时间:2024/05/29 04:48

hibernate

不给有默认值的字段赋值,让它使用数据库的默认值,方法:

1、给class附属性“ dynamic-insert="true"

例:<class name="com.crtv.entity.Category" table="CATEGORY" dynamic-insert="true">

2、给property(默认值的属性)附属性“ insert="true"

例子:<property name="disorder" type="java.lang.Long" insert="true">

3、给默认值的属性对应的字段(column)附属性“ not-null="false"

例子: <property name="disorder" type="java.lang.Long" insert="true">

            <column name="DISORDER" precision="22" scale="0" not-null="false" />

        </property>

 

证实:

在没有付这些属性之前,hibernate自动生成的映射sql语句是:

insert into CATEGORY (NAME,DISORDER, CATEGORY_ID) values (?, ?, ?)

付过这些属性之后,hibernate自动生成的映射sql语句是:

insert into CATEGORY (NAME, CATEGORY_ID) values (?, ?)