我的应用程序使用 Spring 2.5 和原生 TopLink 10g。我想将我的应用程序从 native TopLink 迁移到 EclipseLink。
目前,我的应用程序中的每个 DAO 都扩展了 TopLinkDaoSupport.java
(在 Spring 2.5 中),以便对所有 DB 操作使用 #getSession()
方法,但是该方法的返回类型是 oracle.toplink.sessions.Session
而不是 org.eclipse.persistence.sessions
。
这个问题有解决办法吗?
最佳答案
我还建议使用 JPA 而不是旧的 TopLink API。
如果您确实需要访问 Session 对象,您也可以从 EntityManager
获取它。检查 EclipseLink
中的 org.eclipse.persistence.internal.jpa.EntityManagerImpl
- 这是一个实现 EntityManager
的类。有一个 getDelegate()
方法实现返回这个 (EntityManagerImpl)
所以 ((org.eclipse.persistence.jpa.JpaEntityManager)[EntityManager].getDelegate( )).getActiveSession()
为您提供 org.eclipse.persistence.sessions.Session
。
关于java - 从 native 迁移到 EclipseLink 持久性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28412650/