java - 从 native 迁移到 EclipseLink 持久性

标签 java jakarta-ee eclipselink toplink

我的应用程序使用 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/

相关文章:

Java连接池实现

java - CTRL-C 不适用于 Java 程序

java - 监控应用程序以监控 Java 桌面应用程序的性能

java - 检查 javax.persistence.TypedQuery ResultSet 是否有更多结果

java - 无法使用 @PersistenceContext 注入(inject) EntityManager [将持久性单元注入(inject) CDI 托管 bean 时出错。]

tomcat - Spring 框架 Tomcat LoadTimeWeaving

java执行linux命令

java - 当 ejb-jar.xml 存在时,EJB3 注释将被忽略

jakarta-ee - 如何在没有 Java EE 应用程序服务器的情况下在 Java 集群中执行单例

java - EclipseLink 中的批量乐观锁定查询