TransactionManager Type이 'JDBC' 경우 커넥션 사용.#

<div class="note"> 카페 1115번 글 </div>

http://cafe.naver.com/ArticleRead.nhn?clubid=10028767&menuid=&listtype=A&boardtype=L&page=&articleid=1115

  • 코드에 트랜잭션 코드를 명시한 경우,

sqlMapClient.startTransaction() - 트랜잭션 객체를 생성
sqlMapClient.update(....) - 트랜잭션 객체 생성이후 첫번째 수행되는 메소드에서 커넥션을 생성
sqlMapClient.queryForObject(....) - 위에서 얻어온 커넥션을 사용

.. sqlMapClient.commitTransaction() - 커밋을 수행함
sqlMapClient.endTransaction() - 커넥션을 close()함, endTransaction()이 호출되기 이전에 commit이 되지 않은 경우 rollback을 수행하고 커넥션을 close하여 커넥션 풀에 반환.
sqlMapClient.startTransaction() - 트랜잭션 객체를 생성
sqlMapClient.update(....) - 트랜잭션 객체 생성이후 첫번째 수행되는 메소드에서 커넥션을 풀에서 가져옴
sqlMapClient.queryForObject(....) - 얻어온 커넥션을 사용

.. sqlMapClient.commitTransaction() - 커밋을 수행함
sqlMapClient.endTransaction() - 커넥션을 close()함, endTransaction()이 호출되기 이전에 commit이 되지 않은 경우 rollback을 수행하고 커넥션을 close하여 커넥션 풀에 반환.

=> 위의 내용을 로그로 확인 sqlMapClient.startTransaction()
sqlMapClient.update() - Created connection 1721336021.
sqlMapClient.queryForObject()
sqlMapClient.commitTransaction()
sqlMapClient.endTransaction() - Returned connection 1721336021 to pool.

sqlMapClient.startTransaction()
sqlMapClient.update() - Checked out connection 1721336021 from pool
sqlMapClient.queryForObject()
sqlMapClient.commitTransaction()
sqlMapClient.endTransaction() - Returned connection 1721336021 to pool.

  • 코드에 트랜잭션 코드가 명시되지 않은 경우,

각각의 메소드 수행시에 startTransaction(), commitTransaction(), endTransaction()이 자동으로 수행된다.

sqlMapClient.queryForObejct() - 커넥션 생성, 사용, 커넥션 close, 커넥션 풀에 반환.
sqlMapClinet.update() - 풀에서 커넥션을 가져옴, 사용, 커넥션 cloase, 커넥션 풀에 반환
sqlMapClient.queryForObject() - 풀에서 커넥션을 가져옴, 사용, 커넥션 cloase, 커넥션 풀에 반환

=> 위의 내용을 로그로 확인해본 결과.

sqlMapClient.queryForObject(..) - Created connection 1764128329. Returned connection 1764128329 to pool.
sqlMapClient.update(..) - Checked out connection 1764128329 from pool. Returned connection 1764128329 to pool.
sqlMapClient.queryForObject(..) - Checked out connection 1764128329 from pool, Returned connection 1764128329 to pool

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-5) was last changed on 06-Apr-2006 09:45 by 이동국