@PersistenceUnit在PlayFramework中不起作用



DB Config:

db=mysql://root@localhost/db
jpa.dialect=org.hibernate.dialect.MySQLDialect
....
db_other.url=jdbc:mysql://localhost/db2
db_other.driver=com.mysql.jdbc.Driver
db_other.user=root
db_other.pass=
db_other.jpa.dialect=org.hibernate.dialect.MySQLDialect

在这些数据库中我有绝对精确的表(克隆)。但不同之处在于这些表中有不同的值。(分别为"值#1"one_answers"值#2")。

一个简单的模型:

package models;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.PersistenceUnit;
import javax.persistence.Table;
import play.db.jpa.GenericModel;
@Entity
@PersistenceUnit(name="other")
@Table(name="testtable")
public class DbTest extends GenericModel {
    @Id
    public String value;
}

剩下的代码:

List<DbTest> lst = DbTest.findAll();
if(!lst.isEmpty())
        System.out.println(lst.get(0).value);

它总是打印值#1。(它必须是'值#2',因为它在db2中)。当然,我已经指定了@PersistenceUnit(name="other")。但这没有任何效果。即使我改了人名。单位随机,没有任何误差。这个注释不起作用或者只是被忽略了?还是我弄错了?:/

设置此外,我试图获得EntityManager,因为它在框架手册中显示(/文档/jpa #多个).

EntityManager em = JPA.getJPAConfig("other").em();

但这是不可能的:& lt; & lt;对于JPA>>

类型,getJPAConfig(String)方法是未定义的

Play 1.2.3不支持多个数据库。支持多个数据库部分包含在本文档页面中错误(该功能只在github的master分支中)。

(现在找不到源文件)

看这里例如:http://groups.google.com/group/play-framework/browse_thread/thread/4079cc961db8c750?pli=1

相关内容

  • 没有找到相关文章