首页 > 解决方案 > 基于数据库将 JPA 列定义为 LOB

问题描述

在我们的 Spring 应用程序中,我们使用 Spring JPA。我们已经定义了一个这样的实体:

@Entity
public class Cat{
    // ....

    //@Lob <-- only if OracleDB is used
    @Column
    private String description;
}

该应用程序可以与不同的数据库一起使用。由于大多数数据库都能够处理VARCHAR列中的大文本,我们决定仅使用默认VARCHAR列来存储描述。

但是现在一个客户想要使用他的 Oracle 数据库。由于对类型有一个疯狂的长度限制,VARCHAR我们必须CLOB在数据库方案中使用 a 。

现在的主要问题是是否有可能将 JPA 实体中的相关字段标记为 Lob,但前提是在运行时使用 Oracle 方言。

标签: javahibernatejpalob

解决方案


推荐阅读