`
maoxy
  • 浏览: 141586 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

hibernate有关generator的设置

阅读更多

今天在弄一个SSH框架的增删改查的简单功能,结果在一个主键设置方面弄了N小时!

原因是我对hibernate还不熟悉。

 

 

<id name="pkId" type="java.lang.Integer">
            <column name="PK_ID" />
            <generator class="identity" />
        </id>

 <generator>的设置很关键,目前我主要遇到的情况就是系统自增长或是我给他赋值。


网上也有很多资料,其中的正确性没去验证,我就说说我遇到的验证过的情况吧。


如果数据库设置了自动增长,并且你也希望他是自增的,则hibernate就要设置identity.

(网上有资料说identity是采用数据库提供的主键生成机制。如DB2、SQL   Server、MySQL   中的主键生成机制。)


如果数据库没有设置为自动增长,但是你又希望他是自动增长的,则hibernate就要设置为increment.


如果你要设置为赋值方式的,则······具体问题具体分析。一般就是assigned、native


以上是我目前总结出来的,以后再有深入了解再详细说明。

 

 

本人才疏学浅,也没专门去查相关资料,写的也不是很详细,只是写出来给自己提个醒。当自己迷惑的时候还有个方向。

谢谢!


 

 

1
1
分享到:
评论

相关推荐

    Hibernate的generator属性

    在 Hibernate 中,`generator` 属性是用于指定如何生成实体类的唯一标识(通常为主键)的一种机制。这个属性可以配置在 `hibernate.hbm.xml` 文件中的 `&lt;id&gt;` 标签内,它允许你选择不同的策略来生成 ID。 1. **...

    hibernate_code_generator.rar

    《使用Hibernate Code Generator提高开发效率》 在Java J2EE开发中,Hibernate作为一个强大的对象关系映射(ORM)框架,极大地简化了数据库操作。然而,手动编写与数据库表对应的Java实体类、Hibernate的.hbm映射...

    hibernate中的generator的生成方式hibernate中的generator的生成方式

    ### Hibernate中的Generator生成方式详解 在Hibernate框架中,对象与关系映射(ORM)是其核心功能之一,它能够将面向对象模型中的类与数据库表建立对应关系,从而实现对象和数据库之间的转换。而在持久化对象的过程...

    Hibernate映射文件id的generator配置方法

    Hibernate 映射文件 id 的 generator 配置方法 Hibernate 映射文件 id 的 generator 配置方法是 Hibernate 框架中的一种重要配置,用于生成持久化类实例的唯一标识符。下面将对 Hibernate 映射文件 id 的 generator...

    Hibernate参数设置一览表

    13. **hibernate.id.new_generator_mappings** 是否使用新的ID生成策略,默认为`true`,支持JPA2的ID生成策略。 14. **hibernate.generate_statistics** 是否收集统计信息,用于性能分析,设为`true`后,可通过...

    hibernate tools源码运行或修改需要的jar

    2. **Hibernate Tools**:作为Hibernate的一部分,它提供了与IDE集成的插件,如Eclipse和IntelliJ IDEA,帮助开发者生成和维护Hibernate相关的代码,比如实体类、映射文件、DAO层代码等。 3. **源码获取**:从描述...

    Hibernate Pojo Generator-开源

    Hibernate Pojo Generator生成通过Hibernate Annotations(+ Spring)访问数据库所需的所有Java代码,包括JUnit测试(每个表1个),这些测试可以立即运行而无需进一步定制。 大部分使用MySQL进行测试。 移至GitHub:...

    Hibernate 参数设置一览表(强烈推荐)

    15. **hibernate.id.new_generator_mappings**:当设置为`true`时,使用新的ID生成策略,默认从Hibernate 5开始启用。 16. **hibernate.max_fetch_depth**:限制了级联加载的深度,防止深度递归导致性能下降。 17....

    hibernate的dtd 包含hibernate.properties

    通过这个文件,我们可以指定Hibernate的工作模式、缓存设置、日志级别等。例如: ``` hibernate.connection.driver_class=com.mysql.jdbc.Driver hibernate.connection.url=jdbc:mysql://localhost:3306/mydb ...

    Hibernate完整使用教程

    generator 是 Hibernate 中的一种生成器,用于生成唯一的标识符。generator 可以通过 Java 类或 XML 文件来定义。 composite-id composite-id 是 Hibernate 中的一种复合标识符,用于标识对象模型的唯一性。...

    HibernateTools-3.2.4

    2. **代码生成器(Code Generator)**:提供了一种方式来自动创建基于Hibernate的持久层代码,包括实体类、映射文件、DAO和Service层代码。 3. **HQL和SQL查询编辑器**:提供了集成的HQL(Hibernate Query Language...

    Hibernate+IDEA 2018 一个hibernate程序

    2. **配置项目**:在配置项目过程中,需要选择Hibernate相关的依赖。IDEA提供了三种方式: - 使用本地的Hibernate JAR包。 - 使用IDEA内置的JAR包(注意IDEA内置版本可能不是最新)。 - 自动导入JAR包。 对于本...

    hibernate保存blob,clob对象

    &lt;generator class="increment"/&gt; &lt;!-- Blob类型的映射 --&gt; &lt;/hibernate-mapping&gt; ``` 在代码中,我们可以通过输入流(InputStream)来读取二进制数据,并将其保存到Blob对象中。例如,当用户上传图片...

    Hibernate tool 源代码

    《深入探索Hibernate Tool源代码:Eclipse Plugin与Code Generator解析》 Hibernate Tool是Java开发者们常用的工具,它基于Hibernate框架,提供了丰富的功能,包括数据库逆向工程、对象关系映射(ORM)代码自动生成...

    Hibernate+struts实例学习

    - Hibernate配置文件的编写,包括SessionFactory的配置和Hibernate属性的设置,对Hibernate的运行性能有直接影响。 - Hibernate映射文件的编写是连接Java对象与数据库表的关键,需要理解对象与关系映射(ORM)的概念...

    hibernate配置文件详解

    &lt;generator class="native" /&gt; &lt;!-- 一对多关联关系 --&gt; &lt;one-to-many class="com.Hibernate.City" /&gt; &lt;/hibernate-mapping&gt; ``` 在该文件中,我们可以看到有多个关键的配置项: * `class`:定义...

    hibernate 重点知识原创

    在开始使用 Hibernate 之前,需要进行环境配置,主要包括导入 Hibernate 相关的 JAR 包,如 Hibernate 的核心库、JDBC 驱动和单元测试库。配置文件 `hibernate.cfg.xml` 是 Hibernate 的心脏,它包含了数据库连接...

    用hibernate形式uuid的生成算法

    ### 使用Hibernate形式生成UUID的算法解析 在Java开发领域,特别是使用Hibernate框架进行数据库操作时,唯一标识符(UUID)的生成是常见的需求之一。UUID(Universally Unique Identifier),即通用唯一识别码,是...

    hibernate 资料hibernate 资料hibernate 资料

    - 首先需要在项目中添加`hibernate3.jar`以及其他相关依赖库(如连接数据库所需的JDBC驱动),并通过设置`CLASSPATH`环境变量确保这些库被正确引用。 - **数据库准备:** - 根据应用需求创建相应的数据库及表结构...

    Hibernate主键生成方式

    2. **Increment方式**:`&lt;generator class="increment"/&gt;` 这种方式由Hibernate自己管理主键的递增,而不是依赖数据库。它维护一个全局计数器,每次保存新实体时,计数器加一并作为主键值。但是,这种方式在多线程或...

Global site tag (gtag.js) - Google Analytics