我必须使用Java EE(Servelt / JPA)开发一个Web应用程序,它将由几个客户使用,每个客户都拥有自己的数据库。当然,所有数据库都具有相同的结构。 所以我的问题是: JPA应用程序是否可以访问多个数据库?
答案 0 :(得分:0)
答案是肯定的。您需要在persistence.xml中使用多个持久性单元。
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="one" transaction-type="JTA">
...
</persistence-unit>
<persistence-unit name="two" transaction-type="JTA">
...
</persistence-unit>
您还需要告诉EJB使用特定的持久性单元
@PersistenceContext(unitName="...")