hibernate 保存对象报的一个异常 让人迷糊

问题描述

异常信息:log4j:WARNNoappenderscouldbefoundforlogger(org.hibernate.cfg.Environment).log4j:WARNPleaseinitializethelog4jsystemproperly.Hibernate:selectDEPARTMENT_ID_SEQ.nextvalfromdualHibernate:insertintoStudent(name,age,_id)values(?,?,?)Exceptioninthread"main"org.hibernate.exception.SQLGrammarException:CouldnotexecuteJDBCbatchupdateatorg.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)atorg.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)atorg.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:249)atorg.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)atorg.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)atorg.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)atorg.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)atorg.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)atorg.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)atorg.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)attest.StudentTest.main(StudentTest.java:27)Causedby:java.sql.BatchUpdateException:ORA-00911:无效字符atoracle.jdbc.dbaccess.DBError.throwBatchUpdateException(DBError.java:459)atoracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:3907)atorg.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)atorg.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242)...8morestudent.hbm.xml----<?xmlversion="1.0"?><!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mappingpackage="com.hibernate.pojo"><classname="Student"><idname="id"column="_id"><generatorclass="sequence"><paramname="sequence">DEPARTMENT_ID_SEQ</param></generator></id><propertyname="name"></property><propertyname="age"></property></class></hibernate-mapping>hibernate.cfg.xml----<?xmlversion='1.0'encoding='utf-8'?><!DOCTYPEhibernate-configurationPUBLIC"-//Hibernate/HibernateConfigurationDTD3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><propertyname="connection.driver_class">oracle.jdbc.driver.OracleDriver</property><propertyname="connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property><propertyname="connection.username">scott</property><propertyname="connection.password">tiger</property><propertyname="dialect">org.hibernate.dialect.Oracle9Dialect</property><propertyname="show_sql">true</property><!--Dropandre-createthedatabaseschemaonstartup--><propertyname="hbm2ddl.auto">update</property><mappingresource="com/hibernate/pojo/Student.hbm.xml"/></session-factory></hibernate-configuration>测试java代码:publicstaticvoidmain(String[]args){Students=newStudent();s.setId(1);s.setName("");s.setAge("");Configurationcf=newConfiguration();SessionFactoryse=cf.configure().buildSessionFactory();Sessionsession=se.openSession();session.beginTransaction();session.save(s);session.getTransaction().commit();session.close();se.close();}求解!!!!!!!!!!!!!!!

解决方案

解决方案二:
就这样啊。oracle不支持的字符?Causedby:java.sql.BatchUpdateException:ORA-00911:无效字符
解决方案三:
sql语句执行不了,应该是你的插入字段的类型和你表里的字段类型不一致!也可能是ls说的那样
解决方案四:
StudentTest.java:27这个地方代码是什么?Causedby:java.sql.BatchUpdateException:ORA-00911:无效字符
解决方案五:
让人费解

时间: 2024-09-29 23:25:35

hibernate 保存对象报的一个异常 让人迷糊的相关文章

hibernate-Spring,Hibernate保存对象时的问题

问题描述 Spring,Hibernate保存对象时的问题 有两个实体类User和Department.建立双向多对一关联. User是多的一端 @Entitypublic class User implements Serializable{ @Id @GeneratedValue(strategy=GenerationType.IDENTITY) @Column(name=""id"") private Integer id; @Column(name=&quo

试写java的反序列化报了一个异常

问题描述 试写java的反序列化报了一个异常 异常信息如下: invalid type code: 11 求高手解释!跪求!趴求!!躺求!!! 解决方案 简单来说就是序列化的类型和你视图反序列化的类型不同,或者你的数据有问题 解决方案二: 异常信息太少了,无法判断,要么上源码,要么将异常信息贴完整.

我在使用System.load(path);报了一个异常java.lang.UnsatisfiedLinkError

问题描述 我在使用System.load(path);报了一个异常java.lang.UnsatisfiedLinkError: Can't load library:+ pathpath 为D:/Program Files/Apache Software Foundation/Tomca 6.0/webapps/o3shoe/WEB-INF/SentinelKeysJDK.dll,但是该目录下又存在这个SentinelKeysJDK.dll文件 问题补充:这个文件是获取加密狗信息使用的,在ma

android-在列表中保存对象出现exception

问题描述 在列表中保存对象出现exception 创建了名为Placeslist的类,想对其列表,在里面保存对象,但是报出异常:**Android.java.lang.NullPointerException** placeslist class: public class Placeslist { @Key public String status; @Key public String id; @Key public String name; @Key public String refer

hibernate save-hibernate执行保存对象时出现异常:org.hibernate.exception.GenericJDBCException

问题描述 hibernate执行保存对象时出现异常:org.hibernate.exception.GenericJDBCException hibernate执行保存对象时出现异常:org.hibernate.exception.GenericJDBCException: could not insert: [com.hibernate.domain.User] Caused by: java.sql.SQLException: Field 'user_id' doesn't have a d

hibernate配置-使用注解生成的uuid.hex 调用save()保存对象不发语句也不报错

问题描述 使用注解生成的uuid.hex 调用save()保存对象不发语句也不报错 @Id @GenericGenerator(name=""systemUUID""strategy=""uuid"") @GeneratedValue(generator=""systemUUID"") @Column(name = ""ID"" unique =

java-json转对象报内部类没有构造方法异常

问题描述 json转对象报内部类没有构造方法异常 我建了个对象,对象中有个内部类.在得到json 使用 JSONObject.toBean 转对象时 报内部类没有构造方法异常.这个内部类的构造方法应该怎么写呢?大牛解答一下嘛.java语言哈. 解决方案 写一个空的构造方法试试 解决方案二: 写一个空的构造方法试试 解决方案三: 使用反射时,实体类要保留默认(无参)构造器.

Hibernate实现注册,注册一个账号后得重启服务器才能注册第二个,不然报错

问题描述 Hibernate实现注册,注册一个账号后得重启服务器才能注册第二个,不然报错 public class RegisterAction extends ActionSupport{ private static final long serialVersionUID = 1L; User user = new User(); public User getUser() { return user; } public void setUser(User user) { this.user

struts和spring和hibernate报下面的异常,有大神知道么?谢谢。

问题描述 struts和spring和hibernate报下面的异常,有大神知道么?谢谢. Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in Servlet