数据库更新后模型 类 出现问题,
Issue with model classes after database updates,
我创建了一个可以对数据库执行 DML 操作的应用程序。现在有一个条件,用户在该数据库中创建了新的 table(通过使用前端),但是由于模型 class 不可用,table 无法访问,所以有任何JAVA 中的框架类型,可以在没有相应模型 classes 依赖项的情况下执行此类操作。
简而言之,有没有框架可以处理所有类型的 DLL 和 DML 操作而无需模型 classes?
我知道这个愚蠢的问题。
我将为您标记问题的几个 API 提供答案,另外还有 JDBC:
JPA
JPA 在编译时需要一个模型(从技术上讲是在您加载实体时),因此它不适用于像您这样的临时模型。当然,您可以使用运行时 Java 编译并动态加载那些运行时生成的实体,但这看起来相当复杂。
jOOQ
jOOQ 可以按照规定的方式工作,例如在教程中。你可以使用 jOOQ:
在 jOOQ 中,生成的代码是完全可选的,为您的客户端代码增加了额外的类型安全性,但您不必使用它。所有的DDL和DML语句都可以用ad-hoc identifiers, or even plain SQL templating.
表示
JDBC
使用时Java/Spring/etc。你总是可以求助于使用 JDBC,上面的大多数 API 在幕后使用的较低级别 API。在 Spring 中,还有一个位于 JDBC 之上的薄 API 称为 JdbcTemplate
,这使得使用 JDBC 更方便。
(免责声明:我在 jOOQ 背后的公司工作)
我创建了一个可以对数据库执行 DML 操作的应用程序。现在有一个条件,用户在该数据库中创建了新的 table(通过使用前端),但是由于模型 class 不可用,table 无法访问,所以有任何JAVA 中的框架类型,可以在没有相应模型 classes 依赖项的情况下执行此类操作。
简而言之,有没有框架可以处理所有类型的 DLL 和 DML 操作而无需模型 classes? 我知道这个愚蠢的问题。
我将为您标记问题的几个 API 提供答案,另外还有 JDBC:
JPA
JPA 在编译时需要一个模型(从技术上讲是在您加载实体时),因此它不适用于像您这样的临时模型。当然,您可以使用运行时 Java 编译并动态加载那些运行时生成的实体,但这看起来相当复杂。
jOOQ
jOOQ 可以按照规定的方式工作,例如在教程中。你可以使用 jOOQ:
在 jOOQ 中,生成的代码是完全可选的,为您的客户端代码增加了额外的类型安全性,但您不必使用它。所有的DDL和DML语句都可以用ad-hoc identifiers, or even plain SQL templating.
表示JDBC
使用时Java/Spring/etc。你总是可以求助于使用 JDBC,上面的大多数 API 在幕后使用的较低级别 API。在 Spring 中,还有一个位于 JDBC 之上的薄 API 称为 JdbcTemplate
,这使得使用 JDBC 更方便。
(免责声明:我在 jOOQ 背后的公司工作)