hibernate中持久化类映射到数据表的注意事项。
2015-11-08 13:04
369 查看
在web项目中,我们用到hibernate的话要先在用java语言创建一个持久化的bean类,然后在映射到数据库中的表!
在这里我要说的是这个数据表的创建 应该使用SQL的DDL语言来完成,不要用management studio,我在做项目的时候用management studio建表导致id主键和java持久化类当中的id不匹配。报了很多错误,所以写此随笔作为警示。
我的栗子!
先贴我的映射文件
持久化类的代码就不贴了,没什么难点。
然后贴建表的DDL语言
注:上面的第5行 identity(1,1)是必须的,如果只有 id int primary key, 那么在使用hibernate时会报错,和映射文件的id(第7行)不匹配!
其他的建表的SQL语句参见
在这里我要说的是这个数据表的创建 应该使用SQL的DDL语言来完成,不要用management studio,我在做项目的时候用management studio建表导致id主键和java持久化类当中的id不匹配。报了很多错误,所以写此随笔作为警示。
我的栗子!
先贴我的映射文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="com.wushuang.bean.TestBean" table="db_test"> <id name="id" column="id" type="int"> <generator class="native" /> </id> <property name="xuhao" type="int" column="xuhao" /> <property name="name" type="string" column="name" /> <property name="lingyu" type="string" column="lingyu" /> <property name="time" type="string" column="time" /> </class> </hibernate-mapping>
持久化类的代码就不贴了,没什么难点。
然后贴建表的DDL语言
use db_gaoxinqiye; go create table db_test ( id int identity(1,1) primary key, xuhao int , name varchar(50) , lingyu varchar(50) , time varchar(50), )
注:上面的第5行 identity(1,1)是必须的,如果只有 id int primary key, 那么在使用hibernate时会报错,和映射文件的id(第7行)不匹配!
其他的建表的SQL语句参见
相关文章推荐
- java Equals解析
- android倒计时功能的实现(CountDownTimer)
- 数学笔记(一)之列主序矩阵
- iOS开发中URL图片存储到本地相册与相册访问权限
- [DiocpRPC]介绍与安装
- Leetocde_290_Word Pattern
- 单例模式的4种写法
- Leetocde_290_Word Pattern
- java布局学习 (一)
- uvalive-6190(二分+dp验证)
- html5新增DOM
- Base64编码原理分析与PHP实现
- 字符雨效果实现
- iOS工程中编译器报黄警告
- Android 依据变量来获得资源R中的id值
- codeforces-437C-The Child and Toy
- 机器学习中的相似性度量
- Edit Distance - LeetCode
- 小工具使用 - 用putty\pscp从win8往ubuntu上传文件
- Leetcode144: Construct Binary Tree from Preorder and Inorder Traversal