Java 不确定我是否理解TransactionWarePersistenceManager工厂代理

Java 不确定我是否理解TransactionWarePersistenceManager工厂代理,java,spring,persistence,dao,jdo,Java,Spring,Persistence,Dao,Jdo,我试图在我的Spring项目中使用org.springframework.orm.jdo.TransactionWarePersistenceManagerFactoryProxy,但我不确定如何使用它,或者它是否正是我想要的。我意识到它可以帮助我的DAO使用普通的JDOPersistenceManagerFactory。另一个问题是:如果代理未正确生成,会发生什么?我仍然可以使用它访问我的工厂来创建事务感知的持久性管理器吗?如果工厂管理的对象是单例对象,这会改变情况吗?为什么不直接访问Pers

我试图在我的Spring项目中使用
org.springframework.orm.jdo.TransactionWarePersistenceManagerFactoryProxy
,但我不确定如何使用它,或者它是否正是我想要的。我意识到它可以帮助我的DAO使用普通的JDO
PersistenceManagerFactory
。另一个问题是:如果代理未正确生成,会发生什么?我仍然可以使用它访问我的工厂来创建事务感知的持久性管理器吗?如果工厂管理的对象是单例对象,这会改变情况吗?为什么不直接访问PersistenceManagerFactory呢?也许
persistencemanagerfactorutils.getPersistenceManager
更适合我的需要?能否
getObject
返回空值?

答案可直接在

我意识到它可以帮助我的DAO与普通的JDO PersistenceManagerFactory一起工作

对。 TransactionWarePersistenceManagerFactoryProxy允许DAO使用普通的JDO PersistenceManagerFactory引用,同时仍然参与Spring(或J2EE服务器)的资源和事务管理。 你当然可以在你的应用程序中使用它。但如果不知道您的确切需求,我们无法进一步确认

我仍然可以使用它访问我的工厂来创建事务感知的持久性管理器吗

DAOs可以在JNDI PersistenceManagerFactory和本地PersistenceManagerFactory的此代理之间无缝切换

如果工厂管理的对象是单例对象,这会改变情况吗?为什么不直接访问PersistenceManagerFactory呢


通常,最好使用Spring的JdoTemplate编写基于JDO的DAO,这样可以在DAO层提供一致的数据访问异常,而不是JDoException。但是,Spring的资源和事务管理(以及依赖项注入)也适用于针对普通JDOAPI编写的DAO。

Lol!对不起,我忍不住哭了,当我看到这个对象的名字时。亲爱的孩子们,这就是为什么Java应该停止吸毒的原因。你知道你在Java世界呆了太久了,而像这样的名字似乎没有那么不合理。。。!伙计们。嘿,伙计们,听着。你又犯了新手的错误。Spring框架不是Java,Java也不是Spring框架。关于最初的问题:这是一种我能真正欣赏的高质量的推特。