一个java工程如何连接两个数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个java工程如何连接两个数据库相关的知识,希望对你有一定的参考价值。

可以的,使用jdbc的链接代码,在你需要的地方建立两个连接即可。每个连接连接到一个数据库。 参考技术A 1
jdbc连接的话可以建多个jdbc链接类
2
hibernate等框架可以在bean上可以指定数据库
3
如果说都不符合你的情况,请具体说明你的情况
参考技术B 因为Connection是从Class.forName()中的出来的,所以你想建立几个就几个。

如何在单个 Java 应用程序中使用两个 PostgreSQL DB 版本?

【中文标题】如何在单个 Java 应用程序中使用两个 PostgreSQL DB 版本?【英文标题】:How to use two PostgreSQL DB versions in a single Java Application? 【发布时间】:2021-10-29 19:53:55 【问题描述】:

在我们的 Java 项目中,我们已经连接了两个 DB,以使用两个连接池获取数据。

但是现在我们的一个数据库升级到了 PostgreSQL 12,而另一个数据库使用了旧的 PostgreSQL 8 版本。

我们在项目中导入了“postgresql-42.2.11.jar”,这个jar可以连接两个版本还是应该导入旧的“postgresql-8.1-407.jdbc3.jar”。 jar”。如果是这样,我们会因为使用两个 PostgreSQL jar 而出现任何错误吗?

但令人惊讶的是,该项目在本地系统中工作,完美地将两个版本的 DB 与一个 jar 连接(“postgresql-42.2.11.jar”),只是抛出一个警告“警告 [http-nio-8084-exec-55] org.postgresql.jdbc.PgConnection。不支持的服务器版本:8.1.11",

但在 linux 服务器上运行后它无法正常工作,它会抛出一个突然的错误,如“Exception org.postgresql.util.PSQLException: FATAL: invalid value for parameter "TimeZone": "Asia/Kolkata"”。

【问题讨论】:

新驱动程序应该可以使用旧数据库。也许旧安装中没有定义那个时区。 【参考方案1】:

在我看来,“加尔各答”拼写直到 2008 年 6 月才添加,首次出现在 v8.1.12 中,比您使用的版本更新。

【讨论】:

好的,但是我应该怎么做才能解决这个问题。不过,感谢您的回答。 升级非常旧的数据库,或者如果您在某处明确设置时区,请将其更改为采用旧拼写。

以上是关于一个java工程如何连接两个数据库的主要内容,如果未能解决你的问题,请参考以下文章

java 连接两个数据库

java - 如何在java中组合(连接)具有相同列名的两个数据框

在java中如何使用UNION连接两个数据库,我想在两个不同数据库中查询信息22?

IDEA如何连接mysql?

如何评测一个软件工程师的计算机网络知识水平与网络编程技能水平?

如何评测一个软件工程师的计算机网络知识水平与网络编程技能水平