This is it. it's IT.

트랜잭션을 통해 여러 작업을 동시에 묶어 수행하기 본문

Backend/JAVA

트랜잭션을 통해 여러 작업을 동시에 묶어 수행하기

응애개발자 애기 2021. 10. 26. 12:13
728x90
반응형


insert와 동시에 update를 해야하는 경우
update와 동시에 insert를 해야하는 경우 
 = > 트랜잭션을 사용
둘다 되거나, 전부 안되거나 해야하는 작업(&&)을 해야 할 때
트랜잭션을 사용

ex) 조회수 상승시키기
"제목을 눌러서 select + 조회수 오름 update" 을 동시에 시키기 위해서. 사용할 수 있다.

댓글 등록 버튼을 누르면...
tbl_reply에 insert + tbl_board의 cnt 컬럼에 + 1 update... 트랜잭션 사용!

트랜잭션을 하기 위한 설정이 필요하다. dependency추가, root-context 수정...등등
namespace에서 tx에 체크도 해주어야한다고 한다.
트랜잭션은 service계층에서 정의한다.
service가 요구사항을 반영하는 곳이기 때문이다. 

@Transactional 어노테이션을 작성한다. 
한 서비스클래스에 2개의 mapper를 넣어서 두개의 mapper에 관한 작업을 동시에 실행하도록 한다. 



728x90
Comments