`
hua04104
  • 浏览: 250895 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate为Oracle自动创建表且主键自增

阅读更多
1.注意:实体类映射表字段时不要使用oralce关键字,否则不能映射成功。
2.步骤:
    (1)往oralce里建一个sequence:
        
                  create sequence seq_id_supervision
                      minvalue 1
                      start with 1
                      increment by 1
         

         注:如果多个表要映射自增长主键,每个表要建一个sequence。
    (2)model映射配置:
        
          <id name="id">
	        <generator class="sequence">
		       <param name="sequence">
			     seq_id_letter
			</param>
		</generator>
	 </id>
         

    (3)Hibernate映射文件配置:
        
         <hibernate-configuration>
<session-factory>
	<property name="hibernate.connection.driver_class">
		oracle.jdbc.driver.OracleDriver
	</property>
	<property name="hibernate.connection.url">
		jdbc:oracle:thin:@localhost:1521:jf
	</property>
	<property name="hibernate.connection.username">jf</property>
	<property name="hibernate.connection.password">jf</property>
	<property name="hibernate.dialect">
             org.hibernate.dialect.OracleDialect
        </property>
	<property name="hibernate.show_sql">true</property>
	<property name="hibernate.hbm2ddl.auto">update</property>
	<property name="hibernate.cache.provider_class">
		org.hibernate.cache.HashtableCacheProvider
	</property>
	<mapping resource="com/chinasoft/jfb/model/LetterInformation.hbm.xml" />
</session-factory>
</hibernate-configuration>
         
分享到:
评论

相关推荐

    在hibernate中实现oracle的自动增长

    本文将深入探讨如何在Hibernate中实现Oracle数据库的自动增长特性,这一功能对于确保数据表中的主键唯一性至关重要。 ### Oracle数据库的自动增长机制 Oracle数据库提供了强大的序列(sequence)功能来支持自动增长...

    JPA主键策略(针对数据库自增字段重置后无效检查项)

    这种策略需要在数据库中建立一个额外的表,默 认表名为hibernate_unique_key,默认字段为integer类型,名称是next_hi。hilo策略适用于需要高性能的场景,但是它需要额外的表空间。 assigned assigned是一种由程序...

    hibernate映射主键生成策略native

    对于Oracle数据库来说,如果`hibernate.hbm2ddl.auto`设置为`create`,并且表结构中有依赖于序列的字段,则需要确保已经创建了相应的序列,否则会报错。 #### 五、总结 通过以上内容可以看出,在Oracle环境下使用...

    SpringMVC+Hibernate+Oracle 实现登录、注册、增删改查功能!

    例如,`@Entity`注解标记实体类,`@Table`指定数据库表,`@Id`定义主键,`@GeneratedValue`管理自增字段。使用Hibernate的Session接口,可以进行CRUD操作,如`save()`、`update()`、`delete()`和`get()`。 Oracle是...

    Hibernate主键生成策略

    - **描述**:Hibernate 自动为主键提供一个递增的值。但这种方式只适用于单个 Hibernate 实例,多实例并发操作时可能会导致主键冲突。 - **优点**:简单易用。 - **缺点**:不支持多实例环境。 - **应用场景**:...

    hibernate主键生成策略

    ### Hibernate 主键生成策略详解 #### 一、概述 Hibernate 是一款开源的对象关系映射 (ORM) 框架,它极大地简化了 Java 应用程序与数据库之间的交互过程。在使用 Hibernate 进行持久化操作时,经常需要处理实体类...

    hibernate自动增长字段

    这段脚本创建了一个全局的`SEQUENCE` `hibernate_sequence`,并为`STAFF`表定义了一个触发器,该触发器会在每次插入新记录前为其分配一个新ID。 ##### 3.2 Hibernate配置文件 Hibernate映射文件中使用`native`策略...

    oracle自增序列

    在数据库应用中,序列是一种常用的数据对象,它能够自动产生唯一的数值,常用于实现表中的主键自增功能。Oracle数据库提供了强大的序列管理功能,可以方便地创建、管理和使用序列。本文将详细介绍如何在Oracle数据库...

    Hibernate主键策略-sequence

    Hibernate还提供了其他主键生成策略,如`increment`(适用于单线程环境),`identity`(数据库自增,如MySQL),`table`(通过独立的主键生成表)等,开发者应根据具体需求选择合适的策略。 6. **跨数据库兼容性**...

    hibernate的主键生成策略

    在Hibernate中,主键生成策略是确保实体类中的主键字段具有唯一标识的关键部分。以下是对Hibernate主键生成策略的详细说明: 1. **assigned**: 这种策略要求用户在调用`save()`方法之前手动设置主键值。Hibernate...

    真实项目中关于主键生成方式的剖析(JPA)

    对于不支持序列的数据库,如MySQL,主键自增通常由数据库内置机制自动处理。在MySQL中,可以使用`SHOW CREATE TABLE`命令查看表结构,包括自增主键的配置。而Hibernate提供了跨数据库的主键生成策略,例如`native`...

    Hibernate的主键生成方式

    - **应用场景**:适合于高并发环境下,且数据库不支持自增主键的场景。 3. **seqhilo** - **定义**:与hilo类似,但是使用数据库序列(sequence)来实现高位值的管理。主要用于Oracle等支持序列的数据库。 - **...

    hibernate 主键生成策略

    - **描述**:Hibernate 自动为主键分配一个递增的值,但此策略仅在一个 JVM 实例内有效,因此在多线程或多实例环境下可能引发问题。 - **应用场景**:适用于单机应用或测试环境,但在生产环境中应谨慎使用。 #### 4...

    Hibernate各种主键生成策略与配置详解

    increment策略由Hibernate在内存中自增生成主键,不依赖于数据库。它通过查询当前表的最大ID值,然后在内存中递增生成新的主键。由于这个过程不是线程安全的,因此在多JVM环境下可能会导致主键冲突。仅适用于单个...

    hibernate连接Orcale

    同时,使用`@Table`注解指定对应的数据库表,`@Id`注解标识主键,`@GeneratedValue`注解处理自增字段等。 4. **映射文件或注解**:在Hibernate中,实体类和数据库表之间的关系可以通过XML映射文件或注解进行定义。...

    Hibernate主键生成

    在Java持久化框架Hibernate中,主键生成策略是至关重要的,因为它决定了如何为数据库表的记录生成唯一的标识符。主键生成器确保了每个记录都有一个独一无二的标识,这对于数据的完整性至关重要。以下是Hibernate中...

Global site tag (gtag.js) - Google Analytics