Java 可以自动连接JDO PersistenceManager还是仅自动连接PersistenceManagerFactory?

Java 可以自动连接JDO PersistenceManager还是仅自动连接PersistenceManagerFactory?,java,spring,dependency-injection,spring-mvc,jdo,Java,Spring,Dependency Injection,Spring Mvc,Jdo,是否可以AutowireJDOPersistenceManager 在下面的示例中,只有PersistenceManager工厂是自动连线的,而PersistenceManager是在每次操作之前使用getter和utility方法获得的 import org.springframework.orm.jdo.PersistenceManagerFactoryUtils; @Service public class MainServiceImpl implements MainService {

是否可以
Autowire
JDO
PersistenceManager

在下面的示例中,只有
PersistenceManager工厂
自动连线的
,而
PersistenceManager
是在每次操作之前使用getter和utility方法获得的

import org.springframework.orm.jdo.PersistenceManagerFactoryUtils;

@Service
public class MainServiceImpl implements MainService
{

    @Autowired
    private PersistenceManagerFactory pmf;

    private PersistenceManager pm;

    public void setPersistenceManager(PersistenceManager pm)
    {
        this.pm = pm;
    }

    public void setPmf(PersistenceManagerFactory pmf)
    {
        this.pmf = pmf;
    }

    public PersistenceManagerFactory getPmf()
    {
        return pmf;
    }

    public PersistenceManager getPersistenceManager()
    {
        return PersistenceManagerFactoryUtils.getPersistenceManager(pmf, true);
    }

}

看起来不太可能

如果查看,您将看到返回PersistenceManager的不是FactoryBean

当然,您可以很容易地找到类型为PersistenceManagerFactory的依赖项并返回PersistenceManager

如果您总是想自动连接当前线程绑定的PersistenceManager,那么您可能希望在内部使用

目标JDO的代理 PersistenceManagerFactory,正在返回 当前线程已绑定 PersistenceManager(Spring管理器) 事务性持久化管理器或 单曲 OpenPersistenceManagerView PersistenceManager)打开 getPersistenceManager(),如果有