में लेनदेन की स्थिति क्या यह जानने का कोई तरीका है कि लेनदेन जेडीबीसी में "चल रहे" राज्य में है या नहीं? मुझे Connection API में कुछ भी नहीं मिला।जेडीबीसी
धन्यवाद
में लेनदेन की स्थिति क्या यह जानने का कोई तरीका है कि लेनदेन जेडीबीसी में "चल रहे" राज्य में है या नहीं? मुझे Connection API में कुछ भी नहीं मिला।जेडीबीसी
धन्यवाद
जेडीबीसी लेनदेन की स्थिति को ट्रैक नहीं करता है। यह लेनदेन राज्य को ट्रैक करने के लिए डीबी का काम है।
यह देखते हुए कि आपके पास अभी भी लेनदेन राज्यों को ट्रैक/जानने पर दो तरीके हैं।
आप लेनदेन विशिष्ट विवरण मांगने के लिए अपने डीबी को एक एसक्यूएल कॉल कर सकते हैं। ऑरैकल के लिए, यह this post में सुझाए गए वी $ लेनदेन तालिका में होगा। (मेरा मानना है कि वसंत यह भी है)
SELECT COUNT(*)
FROM v$transaction t, v$session s, v$mystat
WHERE t.ses_addr = s.saddr AND s.sid = m.sid AND ROWNUM = 1;
एक अन्य समाधान इस तरह के हाइबरनेट के रूप में कुछ सामान्य चौखटे, में लेन-देन प्रबंधक कोड का प्रयोग है।
public interface Session {
public abstract org.hibernate.Transaction getTransaction();
}
public Transaction {
public abstract boolean wasRolledBack() throws org.hibernate.HibernateException;
public abstract boolean wasCommitted() throws org.hibernate.HibernateException;
public abstract boolean isActive() throws org.hibernate.HibernateException;
}
ऑरैकल टिप के लिए धन्यवाद, यह मेरी मदद करेगा। – cadrian
आप "चल रहे राज्य" को कैसे परिभाषित करेंगे? – skaffman
मेरा मतलब "गंदे" जैसा था - पंक्तियों को अपडेट, डालें और हटाएं। – cadrian