gpt4 book ai didi

java - JPA 以及与持久性提供程序和数据库供应商的兼容性

转载 作者:行者123 更新时间:2023-11-30 09:55:35 25 4
gpt4 key购买 nike

JPA promise 在持久性和数据库方面保持供应商中立。但我已经知道,像 hibernate 这样的一些持久性框架并不完美(字符编码、空值比较),你需要为每个数据库调整你的模式。因为有两层(持久性框架和数据库),我想他们是使用一些 JPA 代码的一些工作...

有没有人有多重支持的经验?如果有,避免这种不兼容的技巧和建议是什么?

最佳答案

在 JPA 级别,您唯一可以做的就是使用当前使用的持久性库的 JPA API(即,在使用 hibernate 时,不要使用 Hibernate.initialize())。

在数据库级别,最好的办法是让事情保持简单,因为随着您远离最频繁的用例,行为差异的可能性会增加。具体来说,这可能意味着不使用复合主键、不存储二进制数据、根本不使用 SQL 执行……我相信其他人会有更多好的实践示例,可以让您轻松地从一个数据库迁移到另一个数据库。

以上内容使我可以在 PostgreSQL 和 Oracle 之间切换一个应用程序,在 PostgreSQL 和 MySQL 的一些“方言”( hibernate 术语)之间切换另一个应用程序。

关于java - JPA 以及与持久性提供程序和数据库供应商的兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2754793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com