使用hibernate目录连接到多个数据库

时间:2012-12-18 08:31:03

标签: hibernate postgresql-9.1 catalog

我正在开发一个应用程序,它需要使用hibernate连接到两个Postgres数据库。详情如下: -

软件详细信息: - Java 1.6,Hibernate 4.1.0,Postgres 9.1。

问题场景: - 应用程序需要在运行时连接到我的localhost上的两个数据库TEDA和TEMET,并执行基本的CRUD操作(初始阶段)。

尝试的方法: -  1.将目录属性添加到hibernate映射文件的<class>标记中。 但它不起作用。目录总是被取为null。  2.在我的Hibernate上下文中创建两个不同的数据源和会话工厂,并在不同的DAO对象中使用它们。 这种方法对我有用,我可以连接到不同的数据库。

问题陈述和参考: - 我正在寻找一种方法,其中第(1)点中提到的'目录'方法可能有效。

我搜索了堆栈溢出和其他论坛 Connect to multiple databases in Hibernatewhat is "catalog" used in hibernate annotated class,但大多数人都讨论了使用多个数据源的方法(2)。 我还看了5.1.3节中的hibernate community documentation,第6点 提到目录属性覆盖db Url中的数据库名称,但可能是我遗漏了这里的东西。

请协助。我修改过的属性文件和hibernate映射文件如下所示。

属性文件 -

driverClassName=org.postgresql.Driver
urlDB=jdbc\:postgresql\://localhost\:5432/TEDA    
username=****
password=****
dialect=org.hibernate.dialect.PostgreSQLDialect

hibernate映射文件

<hibernate-mapping>
 <class name="somepackage.PartnerPoc" catalog="TEMET" table="partner_poc">
  <!-- Table specific hibernate implementation and HQL queries-->
</hibernate-mapping>

如果您需要我的更多信息,请告诉我。

提前致谢。

0 个答案:

没有答案
相关问题