2017/2/8 hibernate + oracle 实现id的自增 同时 hibernate项目跑起来 会自己增加字段的原因 oracle触发器的使用
hibernate + oracle 实现id的自增
1.在oracle中先创建一个序列 : 序列语法 如下
create sequence (序列名称)seq_student_id
minvalue 1
start with 1
increment by 1
cache 20;
创建序列 seq_student_id

2.在实体类中添加相应的注释

@SequenceGenerator(name="zoedemo",sequenceName="seq_student_id") name="zoedemo"是数据库名称 sequenceName="seq_student_id”是序列名称
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="zoedemo") generator是数据库名称
@SequenceGenerator(name="zoedemo",sequenceName="seq_student_id",allocationSize=1) 后面最后一个提示的是按照1自增 不然会随机自增
操作后 即可得出这样结果

3.如果是用Hibernate的配置文件用下面这种方

结果一样
方法2:使用hibrenate自带的自增注释
@GeneratedValue(strategy=GenerationType.AUTO)
也是可以实现的自增操作

select seq_student_id.nextval from dual 将会变为 select hibernaet nextval from dual
hibernate项目跑起来 会自己增加字段的原因
在hibernate添加注释的 时候要全部

添加进去
不然会hibnate自己会创建列 使得与原先的oracle自己创建的列重复 name="user_name"
2017/2/8 hibernate + oracle 实现id的自增 同时 hibernate项目跑起来 会自己增加字段的原因 oracle触发器的使用的更多相关文章
- hibernate解决oracle的id自增?
以前做SSH项目时,涉及到的数据库是mySQL,只需将bean的配置文件id设为native 就可以实现表id的自增. 现在用到了Oracle,当然知道这样是不行的啦,那么用序列自增? 我在网络上搜索 ...
- Hibernate在oracle中ID增长的方式
引用链接:http://blog.csdn.net/w183705952/article/details/7367272 Hibernate在oracle中ID增长的方式 第一种:设置ID的增长策略是 ...
- hibernate generator class="" id详解
“assigned” 主键由外部程序负责生成,在 save() 之前指定一个. “hilo” 通过hi/lo 算法实现的主键生成机制,需要额外的数据库表或字段提供高 ...
- Hibernate 再接触 ID生成策略
Xml 方法 在student.hbm.xml中 <generator class="uuid"></generator> 取值如下 1.identity: ...
- 报错:org.hibernate.AssertionFailure: null id in com.tt.hibernate.entities.News entry (don't flush the Session after an exception occurs)
在使用hibernate创建数据库的表格时,出现了如下报错: 十二月 28, 2016 10:17:02 上午 org.hibernate.tool.hbm2ddl.SchemaExport perf ...
- org.hibernate.AssertionFailure: null id in xxx.xx.xx的问题
今日在开发时遇到一个比较奇怪的问题,保存时报这个异常: org.hibernate.AssertionFailure: null id in com.aa.TShoucang null id,这个是什 ...
- org.hibernate.TypeMismatchException: Provided id of the wrong type for class cn.itcast.entity.User. Expected: class java.lang.String, got class java.lang.Integer at org.hibernate.event.internal.Defau
出现org.hibernate.TypeMismatchException: Provided id of the wrong type for class cn.itcast.entity.User ...
- 【hibernate】主键生成策略使用UUID报出如下警告:org.hibernate.id.UUIDHexGenerator - HHH000409: Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;
主键生成策略使用UUID报出如警告如下: 控制台- 2017-11-24 18:40:14 [restartedMain] WARN org.hibernate.id.UUIDHexGenerator ...
- org.hibernate.AssertionFailure: null id in com.you.model.User entry (don't flush the Session after a
1.错误描写叙述 org.hibernate.AssertionFailure: null id in com.you.model.User entry (don't flush the Sessio ...
随机推荐
- Linux 学习总结(三)
一. yum 命令 .列出所有可更新的软件清单命令:yum check-update .更新所有软件命令:yum update .仅安装指定的软件命令:yum install <package_ ...
- 【Scheme】符号求导
思路: 定义一个求导算法, 令其在抽象对象上执行求导操作. 可以由以下规约规则完成: dc/dx=0 dx/dx=1 d(u+v)/dx=du/dx+dv/dx d(uv)/dx=u(dv/dx)+v ...
- 判断python字典中key是否存在
- [译] 什么阻塞了 DOM?
原文地址:https://www.keycdn.com/blog/blocking-the-dom/原文作者:BRIAN JACKSON 当我们谈到web性能或者优化页面级别的速度时,非常重要的一点是 ...
- GitHub优秀项目
https://blog.csdn.net/javaxuexi123/article/details/79248124
- Mastering Unity 2D Game Development
Mastering Unity 2D Game Development will give your game development skills a boost and help you begi ...
- UmBasketella
UmBasketella http://poj.org/problem?id=3737 Time Limit: 1000MS Memory Limit: 65536K Total Submissi ...
- @ResponseBody使用须知
-------------------siwuxie095 @ResponseBody 使用须知 使用 @ResponseBody 注解映射响应体 @ResponseBody 注解可被应用于方法上,标 ...
- WIN7,安装所以软件都提示error writing temporary file
执行: icacls C:\Users\Administrator\Desktop /setintegritylevel H
- 使用python语言计算n的阶乘
计算“1x2x3x4” def factorial(n): result = n ,n): result *= i return resultdef main(): print factorial(4 ...