java - JPA 鉴别器类型性能

标签 java performance jpa orm eclipselink

我有一个关于整数和字符串鉴别器类型之间的性能差异的问题。 我正在使用连接策略,即:

@Inheritance(strategy = InheritanceType.JOINED)
@DiscriminatorColumn(name = "DTYPE", discriminatorType = DiscriminatorType.STRING)
public abstract class SuperClass

我有一些子类扩展了这个父类(super class)。 哪个性能更好? DiscriminatorType.INTEGERDiscriminatorType.STRING

我们的提供商是 eclipselink,我们正在处理大量数据。

提前致谢。

最佳答案

如果您所问的只是这些,那么通常使用整数字段作为主键列或索引列或联接会表现得更好。

但是,如果您确实要处理大量数据,并且扩展类上没有很多不同的属性,则可以考虑使用 SINGLE_TABLE 而不是 JOINED 类型继承。

因为使用 JOINED 类型继承,每次需要数据时都需要执行额外的连接操作。而且每次插入都应该执行 2 次插入。

关于java - JPA 鉴别器类型性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32931718/

相关文章:

java - add(Interface) 和 addConfigured(Interface) 方法真的有效吗?

java - 我可以使用多个 Play Server 实例来记录磁盘上的同一文件吗?

PHP将二进制字符串转换为二进制的有效方法

c++ - 间歇性地没有数据通过 boost::asio/io 完成端口传递

Java string.replace(old, new) 算多少个被替换?

java - Java 泛型新手 - 为什么泛型中存在返回类型为 void 的 Type?

performance - 目录斜杠重定向?这还会发生吗?

java - jpa 中生成的表中的顺序错误

hibernate - HHH000122 : IllegalArgumentException in class: ConsumerAgentAccount, 属性的getter方法:id

java - 为什么 Hibernate 抛出异常 "java.lang.NoSuchMethodError: javax.persistence.UniqueConstraint.name()"?