Application.conf就像这样
db {
default.jndiName=DefaultDS
default.driver = com.mysql.jdbc.Driver
default.url = "jdbc:mysql://sql6.freemysqlhosting.net:3306/sql6157743"
default.username = sql6157743
default.password = "smEkGrF1Kr"
}
当我尝试创作时 EntityManager em = play.db.JPA.em()它提供错误
java.lang.RuntimeException:在上下文中找不到EntityManager。尝试 使用@ play.db.jpa.Transactional
注释你的动作方法
当我用@Transactional注释它时,它会给出错误
[CompletionException:java.lang.IllegalStateException:试图删除 EntityManager,但没有设置。]
如果我在 Application.conf 文件中添加 jpa.default = applicationPersistenceUnit 行,则会出错
[CompletionException:com.google.inject.ProvisionException:无法执行 规定,请参阅以下错误:
1)注入构造函数时出错, javax.persistence.PersistenceException:没有持久性提供程序 EntityManager名为applicationPersistenceUnit at play.db.jpa.DefaultJPAApi $ JPAApiProvider。(DefaultJPAApi.java:39) 在 play.db.jpa.DefaultJPAApi $ JPAApiProvider.class(DefaultJPAApi.java:34) 同时找到play.db.jpa.DefaultJPAApi $ JPAApiProvider 找到play.db.jpa.JPAApi 对于参数0,在play.db.jpa.TransactionalAction。(TransactionalAction.java:20)
找到play.db.jpa.TransactionalAction1错误]
我尝试从Entity Manager Factory和Persistence Unit创建实体管理器,但我的项目中没有任何持久性单元名称甚至persistence.xml文件。我尝试使用持久性工具创建persistence.xml但失败了
EntityManagerFactory factory;
factory = Persistence.createEntityManagerFactory("No persistence unit name I have");
EntityManager em = factory.createEntityManager();
任何解决方案?我只需要在MYSQL的两个表中保存和查询。有什么办法吗?