Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA支持数据库-由JPA或it定义';什么取决于供应商?_Java_Mysql_Hibernate_Jpa - Fatal编程技术网

Java JPA支持数据库-由JPA或it定义';什么取决于供应商?

Java JPA支持数据库-由JPA或it定义';什么取决于供应商?,java,mysql,hibernate,jpa,Java,Mysql,Hibernate,Jpa,我有一个简单的问题,我知道如果您只使用JPA方法,您可以将数据库从MySQL更改为Derby,而不必担心更改代码 我的问题是,所有受支持的数据库都是由JPA定义的,还是由提供商来支持它们 JPA是一个规范,不提供特定数据库的实现。因此,受支持数据库的问题实际上是关于与JPA一起使用的提供者(Hibernate或EclipseLink等) 如果您使用的是Hibernate,请参阅支持的数据库。但是如果我将使用限制为仅使用JPA定义的方法,则可以在不更改代码的情况下更改提供程序。对吧?对。这是在OR

我有一个简单的问题,我知道如果您只使用
JPA
方法,您可以将数据库从
MySQL
更改为
Derby
,而不必担心更改代码


我的问题是,所有受支持的数据库都是由JPA定义的,还是由提供商来支持它们

JPA是一个规范,不提供特定数据库的实现。因此,受支持数据库的问题实际上是关于与JPA一起使用的提供者(Hibernate或EclipseLink等)


如果您使用的是Hibernate,请参阅支持的数据库。

但是如果我将使用限制为仅使用JPA定义的方法,则可以在不更改代码的情况下更改提供程序。对吧?对。这是在ORM实现之上使用JPA的优势之一。然后,如果我想将我的数据库从MySQL更改为X,并且我当前的JPA提供程序不支持X,我可以更改为另一个支持数据库X的JPA提供程序,而无需更改代码。对的(我希望您在这里遵循了我的想法:))将需要进行配置更改以支持它。但是,同样地,您不需要重写代码来完成这项任务。