今天在用Hibernate往数据库中插入数据,真是体味了一把Hibernate的神奇呀
user.table的主键id没有实际意义,仅仅做主键自增。所以在插入数据的时候这个主键的插入没什么意义。
那怎样让它自己添加呢?hibernate给了很好的封装。只需要在表的映射文件的主键映射中添加<generator class="increment"/>就OK了。
在save(user)时,这个user只要设置了其它不允许为空的字段的值就OK,不用特意设置主键的值了。
超方便的O。
user.hmb.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="model.user" table="user_table">
<id column="id" name="id">
<generator class="increment"/>
</id>
<property column="user_id" name="user_id"></property>
<property column="user_name" generated="never" lazy="false" name="user_name"/>
<property column="user_psw" generated="never" lazy="false" name="user_psw"/>
<property column="power" generated="never" lazy="false" name="power"/>
</class>
</hibernate-mapping>