当前位置: 首页 > 面试题库 >

定义独立于数据库的JPA对象uid

辛龙野
2023-03-14
问题内容

事实证明,以下示例在使用mysql 5.x时有效,但是在使用oracle 10g数据库时无效。

有没有一种方法可以定义独立于数据库技术的唯一标识符字段?

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private long id;

我已经在hibernate状态下对此进行了测试,并且只有在使用Oracle时才会发生以下异常:

org.hibernate.MappingException: Dialect does not support identity key generation

问题答案:

我已经研究过使用GenerationType.AUTO,它的确是更好的选择。它允许JPA实现选择最适合您所使用的数据存储系统的任何东西。



 类似资料:
  • 我的目标是为现有应用程序启用架构和数据迁移。 这种问题似乎已经被问过很多次了,不过我想是因为不同的要求和环境。 由于我在这个领域没有经验,请允许我先介绍一下应用程序的架构和我的假设。 该应用程序是一个多用户企业桌面应用程序,具有后端服务器,可以持久保存到任何主要数据库(MySql,Postgresql,SQL服务器,Oracle数据库等)。假设数据库是内部部署的,并由我们的客户维护。 使用的技术堆

  • 我被要求将大型独立Swing应用程序的数据库连接JAR从Eclipselink JPA 2.0迁移到Eclipselink JPA 3.0实现。 我看到一个很大的不同:Eclipselink 3.0使用雅加达。现在我所要做的就是连接到数据库,但到目前为止我一直没有成功,我不知道为什么。这是我的测试课: 当我运行这个时,我得到了这个异常。 异常告诉我我的persistence.xml或我正在使用的j

  • 在我的本地设置中,我使用一个简单的H2数据库。“托管”解决方案将有另一个(类似但不相同)数据库。 我需要将最大可能的日期插入到DateTime列中。我试图用 但是,这会导致列中出现-169104626-12-11 20:08:15.9999999。 关于如何插入最长可能日期,是否有可靠的选项?

  • 主要内容:1. 逻辑数据独立性,2. 物理数据独立性可以使用三模式体系结构来解释数据独立性。 数据独立性是指能够在数据库系统的一个级别修改模式而不改变下一个更高级别的模式的特征。 有两种类型的数据独立性: 1. 逻辑数据独立性 逻辑数据独立性是指能够在不必更改外部模式的情况下更改概念模式的特征。 逻辑数据独立性用于将外部级别与概念视图分开。 如果对数据的概念视图进行任何更改,那么数据的用户视图将不会受到影响。 逻辑数据独立性发生在用户界面级别。 2

  • 问题内容: 我们正在以模块化的方式与Spring,Hibernate和Maven开发Web应用程序。有定义数据访问和查看特定内容的核心项目,还有定义逻辑和实体()的模块,然后有定义控制器和视图的Web应用程序。 现在,我们有一个安全模块,定义了帐户和角色等安全实体,还有一个原型模块,定义了一些示例实体,例如客户和订单。两者都有一个内部定义,除了PersistenceUnit名称外,几乎都为空,因为

  • 本文向大家介绍DBMS中的数据独立性,包括了DBMS中的数据独立性的使用技巧和注意事项,需要的朋友参考一下 数据库包含大量数据。并非所有数据都是用户数据,某些数据可能是元数据等。因此,数据库具有数据独立性非常重要。 数据独立性基本上意味着,如果在某个级别上更改数据,则不会影响更高级别上的数据视图,因此,更高级别上的数据应与更低级别上的数据修改无关。  有两种类型的数据独立性。这些是- 逻辑数据独立