使用hibernate框架对pojo数据进行save到数据库时(笔者碰到的问题是在操作oracle数据库),由于某些配置不当会引起一些错误,
如:org.hibernate.exception.SQLGrammarException: could not get next sequence value
这是因为数据库表中id作为主键设置自动增长,而pojo模型中的id(如 userid)没有设置产生的找不到序列问题;解决方法:
hibernate连接oracle有两种方式,一种是制定sequence的名字 如:
< id name="id" column="ID"> < generator class="sequence"> < param name="sequence">DEPARTMENT_ID_SEQ< /param> < /generator> < /id>
如果要使用native,则必须创建名为HIBERNATE_SEQUENCE 的sequence
CREATE SEQUENCE HIBERNATE_SEQUENCE MINVALUE 1 MAXVALUE 99999
< id name="id" column="ID"> < generator class="native" /> < /id>
另外如果采用上述的native主键生成策略需创建一个触发器对改序列进行引用(sequence暂无验证),否则可能会报org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update错误:
create or replace trigger 触发器名
before insert on 表名
for each row
declare
begin
select seq_user.nextval
into:new.主键名 from dual;
end trigger_user;
另外产生org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update错误也有可能是插入的数据长度超出数据库该字段设置的长度所致
分享到:
相关推荐
大家在开发的过程中,最讨厌就是写POJO了,有很多开发人员喜欢用Hibernate去生成POJO,但是还是比较麻烦,我写的这个类,大家只要放到你的tomcat下面直接运行,用浏览器打开项目,只要在页面上选择一下数据库的名称...
POJO 1Hibernate ³äøõñ.uQ°n@R!Domain Object (T%ä]° ïxm get/setm) 9ê!POJOnÏnÙ!“Plain Ordinary Java Object”i´ñÂÒxnϼ rJava @ i Wæ!bøõñ7áŧ÷g!ò@ (Value ...
生成hibernate pojo类,dao类,service类,action类。 生成保存,删除,修改,批量保存,批量修改,批量删除,按条件查询,分页查询等功能。 生成各大主流框架配置文件及jsp页面。 一键生成整个项目,加入...
* 5.identity 使用SQL Server和MySQL的自增字段,这个方法不能放到Oracle中,Oracle不支持自增字段,要设定sequence(MySQL和SQL Server中很常用)。等同于JPA中的IDENTITY * 例:@GeneratedValue(generator = ...
将JSON列类型映射到List<POJO>或Map<String> ,需要确保POJO类型覆盖默认的equals和hashCode方法,并根据JSON对象的内容实现它们。 否则,Hibernate脏检查机制可能会触发意外的UPDATE语句。 查看。 Oracle 您应该...
生成Hibernate POJO类,Dao类,Service类,Action类。 生成保存,删除,修改,批量保存,批量修改,批量删除,按条件查询,分页查询等功能。 生成各大主流框架配置文件及JSP页面。 一键生成整个项目,加入Jar包部署...
org.hibernate.dialect.Oracle9Dialect <prop key="hibernate.show_sql">true <prop key="hibernate.format_sql">true <value>com/newer/pojo/CustType.hbm.xml</value> ...
sqltoy-orm是比hibernate+myBatis(plus)更加贴合项目的orm框架(依赖spring),具有jpa式的对象CRUD的同时具有比myBatis(plus)更直观简洁性能强大的查询功能。 支持以下数据库: oracle 11g+ db2 9.5+,建议从10.5 开始...
<prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect <prop key="hibernate.show_sql">true <prop key="hibernate.hbm2ddl.auto">update ${jdbc.username} ...
能自动提供单表的创建,查询,更新,删除,建表语句,整表全部数据插入语句,单表对应Pojo类和单表的Hibernate映射文件等常用文字的生成。 4. 能执行Sql语句并显示执行结果。 5. 提供语法高亮功能以助于Sql语句的...
项目开发过程中,会做一些重复度较高的开发工作(表结构设计、生成数据库建库脚本、数据字典定义、hibernate映射文件编写、POJO对象文件编写、简单的JSP表单页面).在跨数据库平台的小组中甚至要做到一套程序多套...
//讲User对象保存到数据库中 public void insertUser(User user){ } } JDBC:本身自动帮我做事务管理的操作 AutoCommit = true; Connection.setAutoCommit(false); 正常: conn.commit(); 异常: conn....
运行环境:Windows XP、JDK 6.0、SQL Server 2000、Oracle 9i、Eclipse 3.3 使用步骤: 1. 下载解压之后使用IDE导入工程 2. 检查一下工程是否导入了lib目录下的数据库驱动,如果导入,那么需要导入这些包 3. 运行...
车辆紧急救援系统spring+springMVC+hibernate框架对象(javaBean,pojo)设计 车辆紧急救援系统spring+springMVC+mybatis框架对象(javaBean,pojo)设计 车辆紧急救援系统登录注册界面 车辆紧急救援系统mysql数据库版本...
用户能自动快速获取单表的创建,查询,更新,删除,建表语句,整表全部数据插入语句,单表对应Pojo类和单表的Hibernate映射文件等常用文字,且可借此构造更复杂的Sql语句。 4. 能执行Sql语句并显示执行结果,如果是...
实验室座位管理系统spring+springMVC+hibernate框架对象(javaBean,pojo)设计 实验室座位管理系统spring+springMVC+mybatis框架对象(javaBean,pojo)设计 实验室座位管理系统登录注册界面 实验室座位管理系统mysql...
表结构元数据的API也向用户开放,同时支持在使用过程中,灵活调整映射关系,因此用户可以用API动态的创建表结构的模型,从而实现各种动态类型和表的映射(例如POJO中包含一个Map,用于映射各种动态扩展的字段)企业...
将简单的POJO对象直接持久化到数据库中; 打印运行时出错SQL语句,其可以直接拷贝到数据库客户端上进行调试; 直截了当的分页查询。 1.2 获取结果集 获取结果集,就是把ResultSet转换为目标数
一定会为Hibernate或其他插件的配置部署问题而搞懵,这些类型的插件有个最大的问题是其核心操作均是由该插件的内部完成,对开发人员来说是个黑匣子(一般用户不会去读其开源代码),而且多个项目用同类型的插件部署...
共享单车监管系统的设计与开发spring+springMVC+hibernate框架对象(javaBean,pojo)设计 共享单车监管系统的设计与开发spring+springMVC+mybatis框架对象(javaBean,pojo)设计 共享单车监管系统的设计与开发登录注册...