hibernate中持久化类映射到数据表的注意事项。

在web项目中,我们用到hibernate的话要先在用java语言创建一个持久化的bean类,然后在映射到数据库中的表!

在这里我要说的是这个数据表的创建 应该使用SQL的DDL语言来完成,不要用management studio,我在做项目的时候用management studio建表导致id主键和java持久化类当中的id不匹配。报了很多错误,所以写此随笔作为警示。

我的栗子!

先贴我的映射文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
 3  "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
 4 <hibernate-mapping>
 5 
 6     <class name="com.wushuang.bean.TestBean" table="db_test">
 7         <id name="id" column="id" type="int">
 8             <generator class="native" />
 9         </id>
10         <property name="xuhao" type="int" column="xuhao" />
11         <property name="name" type="string" column="name" />
12         <property name="lingyu" type="string" column="lingyu" />
13         <property name="time" type="string" column="time" />
14     </class>
15 
16 </hibernate-mapping> 

持久化类的代码就不贴了,没什么难点。

然后贴建表的DDL语言

 1 use db_gaoxinqiye;  
 2 go  
 3 create table db_test  
 4 (  
 5    id int identity(1,1) primary key,  
 6    xuhao int ,  
 7    name varchar(50) ,  
 8    lingyu varchar(50) , 
 9    time varchar(50),  
10 ) 

注:上面的第5行  identity(1,1)是必须的,如果只有 id int primary key,   那么在使用hibernate时会报错,和映射文件的id(第7行)不匹配!

其他的建表的SQL语句参见

posted @ 2015-11-08 13:04  赵无双  阅读(526)  评论(0编辑  收藏  举报