كيفية الحصول على مثيل مدير معاملات الربيع؟
-
29-09-2019 - |
سؤال
أستخدم التعليقات التوضيحية لتمييز الأساليب التي يجب تنفيذها في معاملة.
لكن في مكان واحد بحاجة للقيام به transactionManager.rollback()
يدويًا ، بدون شرح. كيف يمكنني الحصول عليها transactionManager
هدف؟
المحلول
إذا كنت ترغب في تراجع المعاملة الحالية ، فيمكنك استخدامها
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
لاحظ أنه لا تراجع المعاملة على الفور - فإنه يحدد حالة "التراجع فقط" ، لذلك سيتم ترحيل المعاملة أثناء محاولة الالتزام.
خلاف ذلك ، إذا كنت بحاجة إلى معاملة برمجية ، فيمكنك استخدامها
TransactionTemplate
, ، كما هو موضح في 10.6 إدارة المعاملات البرمجية.
كما يمكنك الحصول على مثيل PlatformTransactionManager
, ، لكنها لا تستخدم على نطاق واسع منذ ذلك الحين TransactionTemplate
هو النهج الموصى به لتصوير المعاملة البرمجية.
أنظر أيضا:
نصائح أخرى
إذا تم تكوين كائنك بحلول الربيع ، فيمكنك إيقاف تشغيل مسار UnductionManager فيه ...
لا تنتمي إلى StackOverflow