-
Hibernate 序列的问题。请教5
这是我写的一个方法public boolean addEmployee(Employee emp) { boolean flag = false; Session session = HibernateSessionFactory.getSession(); Transaction t = null; try { t = session.beginTransaction(); session.save(emp); t.commit(); return flag = true; } catch (Exception e) { e.printStackTrace(); if (t != null) { t.rollback(); } return flag; } finally { session.close(); } } public static void main(String[] arge){ Employee emp = new Employee(); EmployeeDAOImpl empl = new EmployeeDAOImpl(); emp.setAge("1976-09-08"); emp.setDepId("LG"); emp.setEmpId("LG20050001"); emp.setEmpName("小王"); emp.setPassword("123"); emp.setSchool("中国科学技术大学"); emp.setSchoolage("硕士"); emp.setSex("男"); emp.setSpeciality("核工业"); empl.addEmployee(emp); }
这个是Employee.hbm.xml<hibernate-mapping> <class name="com.xfweb.hibernate.Employee" table="EMPLOYEE" schema="XF"> <id name="empId" type="java.lang.String"> <column name="EMP_ID" length="30" /> <generator class="native" /> </id> <property name="empName" type="java.lang.String"> <column name="EMP_NAME" length="20" /> </property> <property name="password" type="java.lang.String"> <column name="PASSWORD" length="20" /> </property> <property name="sex" type="java.lang.String"> <column name="SEX" length="10" /> </property> <property name="age" type="java.lang.String"> <column name="AGE" length="20" /> </property> <property name="speciality" type="java.lang.String"> <column name="SPECIALITY" length="50" /> </property> <property name="schoolage" type="java.lang.String"> <column name="SCHOOLAGE" length="20" /> </property> <property name="school" type="java.lang.String"> <column name="SCHOOL" length="50" /> </property> <property name="depId" type="java.lang.String"> <column name="DEP_ID" length="20" /> </property> </class> </hibernate-mapping>
测试以后发现EMP_ID里不是我插入的“LG20050001”而是“4”;这个表我并不希望他插入序列。其他的属性都是正确的。我想可能跟我插入的“Hibernate_sequence”有关。但是我不创建这个序列的话,其他表的序列就报错提示序列不存在。这个应该怎么解决啊?
2008年6月02日 12:00
1个答案 按时间排序 按投票排序
-
采纳的答案
<id name="empId" type="java.lang.String">
<column name="EMP_ID" length="30" />
<generator class="native" />
</id>
改成
<id name="empId" type="java.lang.String">
<column name="EMP_ID" length="30" />
<generator class="Assigned" />
</id>
Assigned才是將主鍵的生成將給程序處理,與HIbernate無關.2008年6月02日 16:55
相关推荐
这主要是为了解决内存的不稳定性和容量限制问题,并满足业务数据共享、大规模数据检索和数据管理的需求。 在企业级应用中,对象序列化适合少量对象的持久化,但不符合大规模查询和长时间保存的需求。因此,除了对象...
【标题】与【描述】提及的是“Hibernate面试题专栏”,主要涵盖了全面的Hibernate面试题、笔试题以及相关问题,这表明我们将要讨论的是Java领域中著名的对象关系映射框架——Hibernate的相关知识。Hibernate是一个...
例如,JDK的升级可能会影响到反射、序列化、线程同步等核心机制,而这些机制是Hibernate在进行ORM操作时经常用到的。此外,新JDK可能会对内存管理、垃圾回收策略进行优化,这可能会影响Hibernate的性能或稳定性。当...
这个问题通常源于多个因素,包括日期时间的序列化与反序列化过程、时区设置、以及Hibernate的配置等。以下我们将详细探讨这个问题的成因及解决方案。 1. **日期时间序列化与反序列化**: Hibernate在处理Date对象...
Hibernate 配置各种数据库 Hibernate 是一个基于 Java 的持久层框架,提供了一个抽象的数据访问层,能够与多种数据库进行集成。在 Hibernate 的配置文件中,我们可以配置不同的数据库连接,包括驱动程序、URL 等...
"Hibernate入门到精通" Hibernate 是一个基于Java的ORM(Object-Relational Mapping,对象关系映射)框架,它提供了一种简洁高效的方式来访问和操作关系数据库。下面是 Hibernate 的主要知识点: Hibernate 简介 ...
hibernate效率注意的几个问题,批量删除和批量更新建议用JDBC,这是一个原则,当然有的时候可能必须用Hibernate来批量更新和批量删除,那么这个时候我想说的就是,Hibernate批量更新和删除效率并非传说中的那么差,...
二级缓存则是在多个`Session`间共享的,可以提高数据读取效率,但需谨慎使用以防止数据一致性问题。 8. **持久化类和映射文件**:持久化类是与数据库表对应的Java类,通常包含一些特定的注解或XML映射文件...
6. **其他辅助库**:例如,可能包含用于日期时间处理的Joda-Time,或者用于JSON序列化的Jackson或Gson库。 在开发过程中,使用这个“hibernate jar包”可以快速搭建Hibernate环境,只需将这些jar文件添加到项目的类...
hibernate 5.2.15 hibernate 5.2.15 hibernate 5.2.15 hibernate 5.2.15 hibernate 5.2.15hibernate 5.2.15
然而,在使用Hibernate时,可能会遇到事务回滚失败的问题,本文将详细介绍该问题的原因和解决方法。 一、问题描述 在使用Hibernate时,可能会遇到以下错误信息: Could not roll back Hibernate transaction; ...
Hibernate.jar包,Hibernate可以应用在任何使用JDBC的场合,包含 hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-...
3. **文档**:如用户指南、API文档,帮助开发者快速上手和解决问题。 4. **示例**:包含了一些演示如何使用Hibernate的代码示例,有助于理解其用法。 5. **配置文件**:可能有默认的配置模板,展示如何配置Hibernate...
在Java开发环境中,与KingbaseV8数据库进行交互通常会用到Hibernate框架和JDBC驱动。 Hibernate是一个优秀的对象关系映射(ORM)框架,它简化了Java应用程序对数据库的操作,通过将Java对象与数据库表进行映射,...
为了解决这一问题,两个工具——hibernate-extensions和Middlegen-Hibernate应运而生,它们可以自动生成这些代码,提高了开发效率。 **hibernate-extensions** 是Hibernate框架的一个扩展,它提供了一些额外的功能...
标题中的“hibernate和MySQL的jar”指的是Hibernate ORM框架与MySQL数据库之间的连接库。Hibernate是一种流行的Java对象关系映射(ORM)工具,它允许开发者使用面向对象的编程方式来操作数据库,而无需直接编写SQL...
HibernateTools是Java开发人员在使用Hibernate ORM框架时的有力辅助工具集,主要目的是为了提高开发效率,简化数据库操作。在HibernateTools 3.2.4版本中,它包含了一系列的特性与插件,以支持更便捷地进行对象关系...
Hibernate3 是一个强大的Java持久化框架,它允许开发者将数据库操作与业务逻辑解耦,使得应用程序的开发更为简便。这个“hibernate3全部jar包:hibernate3.jar.zip”包含了所有必要的库文件,方便用户一次性下载并...
hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,包含4个说明文档,分别详细解说了hibernate...