5
A
답변
4
JDBC는 트랜잭션 상태를 추적하지 않습니다. 거래 상태를 추적하는 것은 DB의 일입니다.
그렇다면 여전히 트랜잭션 상태를 추적/알 수있는 두 가지 방법이 있습니다.
DB에 대해 SQL 호출을 수행하여 트랜잭션 세부 정보를 요청할 수 있습니다. oracle의 경우 v $ transaction 테이블에 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;
또 다른 해결책은 최대 절전 모드 (Spring이 있다고 생각합니다)와 같은 일부 공통 프레임 워크에서 트랜잭션 관리자 코드를 사용하는 것입니다.
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;
}
+0
오라클 팁 주셔서 감사합니다, 그것은 나를 도울 것입니다. – cadrian
관련 문제
- 1. Hibernate 트랜잭션 상태 얻기
- 2. jdbc의 문
- 3. JDBC의 SQLException
- 4. 개체 상태 트랜잭션 롤백시 복원
- 5. MySQL/JDBC의 동적 ENUM
- 6. linux에서 jdbc의 dbase에 연결
- 7. JDBC의 PACKAGE.TABLENAME % ROWTYPE
- 8. jdbc의 createStatement 메소드
- 9. Spring-JDBC의 getResultSet
- 10. JConnection과 JDBC의 차이점은 무엇입니까?
- 11. JDBC의 데이터베이스 드라이버 연결 문제
- 12. JDBC의 데이터 소스는 어떻게 사용합니까?
- 13. 트랜잭션
- 14. 트랜잭션 concurency 보호 (트랜잭션 유형, 트랜잭션 IsolationLevel)
- 15. SQL 서버 데이터베이스 트랜잭션 교착 상태; Visual Studio 삽입 절차
- 16. 상태 비 저장 세션 EJB 3.0의 트랜잭션 롤백
- 17. 엔터프라이즈 라이브러리를 사용할 때의 트랜잭션 범위 및 교착 상태
- 18. 저장 프로 시저의 상태 정보를 트랜잭션 내부의 호출자에게 전달합니다.
- 19. Spring Jdbc의 원 자성 (변경 테이블 포함)
- 20. JDBC의 QUERY WHERE 절에 변수 이름 지정
- 21. SSH 터널을 통해 jdbc의 oracle db에 연결하십시오.
- 22. oracle sql converter jdbc의 CharacterConverter12Byte 문제
- 23. C#의 트랜잭션 내에서의 트랜잭션
- 24. 트랜잭션 대 비 트랜잭션 msmq
- 25. 트랜잭션 로그를 사용하여 트랜잭션 롤백
- 26. @ 트랜잭션 주석이있는 여러 트랜잭션 관리자
- 27. 선언적 트랜잭션 구현 문제
- 28. SQL Server 2005 트랜잭션
- 29. Weblogic "트랜잭션 중단"경고
- 30. Oracle의 트랜잭션 무결성 보증
"진행중인 상태"를 어떻게 정의 하시겠습니까? – skaffman
"더티 (dirty)"같은 의미 - 행을 업데이트, 삽입 및 삭제합니다. – cadrian