Ich versuche, die zu verwenden org.springframework.orm.jdo.TransactionAwarePersistenceManagerFactoryProxy
in meinem Spring-Projekt, aber ich bin mir nicht sicher, wie ich es verwenden soll oder ob es genau das ist, wonach ich suche. Mir ist klar, dass es dazu beitragen kann, dass meine DAOs mit einem einfachen JDO funktionieren PersistenceManagerFactory
. Eine andere Frage ist: Was passiert, wenn der Proxy nicht richtig erstellt wird? Kann ich es trotzdem verwenden, um auf meine Factory zuzugreifen, um einen transaktionsbewussten Persistenzmanager zu erstellen? Wenn das von der Factory verwaltete Objekt ein Singleton ist, ändert das etwas? Warum nicht einfach direkt auf die PersistenceManagerFactory zugreifen? Vielleicht PersistenceManagerFactoryUtils.getPersistenceManager
würde besser zu meinen bedürfnissen passen? dürfen getObject
Null zurückgeben?
Ich bin mir nicht sicher, ob ich TransactionAwarePersistenceManagerFactoryProxy verstehe
Chan Priyankara
Antworten sind direkt auf verfügbar Dokumentation
Mir ist klar, dass es dazu beitragen kann, dass meine DAOs mit einer einfachen JDO PersistenceManagerFactory funktionieren.
Ja. Der TransactionAwarePersistenceManagerFactoryProxy-Proxy ermöglicht es DAOs, mit einer einfachen JDO PersistenceManagerFactory-Referenz zu arbeiten und gleichzeitig an der Ressourcen- und Transaktionsverwaltung von Spring (oder einem J2EE-Server) teilzunehmen. Sie können es sicherlich in Ihrer App verwenden. Aber ohne Ihre genauen Bedürfnisse zu kennen, können wir das nicht weiter bestätigen.
Kann ich es immer noch verwenden, um auf meine Fabrik zuzugreifen, um einen transaktionsbewussten Persistenzmanager zu erstellen
DAOs könnten nahtlos zwischen einer JNDI PersistenceManagerFactory und diesem Proxy für eine lokale PersistenceManagerFactory wechseln.
Wenn das von der Factory verwaltete Objekt ein Singleton ist, ändert das etwas? Warum nicht einfach direkt auf die PersistenceManagerFactory zugreifen?
Es ist normalerweise vorzuziehen, Ihre JDO-basierten DAOs mit JdoTemplate von Spring zu schreiben, das Vorteile wie konsistente Datenzugriffsausnahmen anstelle von JDOExceptions auf der DAO-Ebene bietet. Springs Ressourcen- und Transaktionsverwaltung (und Dependency Injection) funktionieren jedoch auch für DAOs, die gegen die einfache JDO-API geschrieben wurden.
Lol! Tut mir leid, ich kann mir nicht helfen, ich habe fast geweint, als ich den Objektnamen sah.
– Eric des Courtis
31. Januar 2013 um 22:36 Uhr
Und deshalb, liebe Kinder, sollte Java aufhören, Drogen zu nehmen.
– Griwes
25. Juni 2013 um 16:35 Uhr
Sie wissen, dass Sie zu lange in der Java-Welt waren, wenn Namen wie dieser nicht so unvernünftig erscheinen …!
– Brian
26. Juni 2013 um 12:18 Uhr
Leute. Hey Leute, hört zu. Du machst wieder den Anfängerfehler. Spring Framework ist nicht Java und Java ist nicht Spring Framework. Verwirren Sie sie nicht.
– Thorben
27. Juni 2013 um 5:33 Uhr
Zur ursprünglichen Frage: Das ist die Art von qualitativ hochwertigem Trolling, die ich wirklich zu schätzen weiß.
– Thorben
27. Juni 2013 um 5:39 Uhr