강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

chaelynjang님의 프로필 이미지
chaelynjang

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

준영속 상태

commit 관련 질문

작성

·

701

0

안녕하세요 강사님

플러시 강의를 보며 트랜잭션이라는 작업단위와 커밋이 매우 중요하다는 것을 알게 되었는데요,

저는 지금까지 MyBatis만 사용하면서 commit이나 트랜잭션을 전혀 신경쓰지 않았다는 것을 알고 부끄러워졌습니다.

MyBatis에서는 insert/update/delete 작업 후 따로 커밋을 하지 않아도 db에 반영되는 것 같던데 이건 MyBatis가 알아서 커밋을 해주는 건가요..??

항상 좋은 강의 감사하고 요런 다소 한심한 질문을 남기게 되서 죄송합니다..!

퀴즈

JPA에서 영속성 컨텍스트는 어떤 역할을 하는 핵심 개념일까요?

객체와 테이블의 매핑 정보 정의

엔티티를 관리하고 DB와 동기화하는 환경 제공

SQL 쿼리 직접 작성 및 실행

데이터베이스 연결 풀 관리

답변 1

0

안녕하세요, chaelynjang 님! 공식 서포터즈 codesweaver 입니다.

우선 데이터베이스에 오토커밋 설정이 되어 있을 수 있습니다.

어떤 데이터베이스를 사용하고 계신지 모르겠으나 

mysql에서는 다음의 쿼리로 현재 설정을 확인하실 수 있습니다.

SELECT @@AUTOCOMMIT;

.

또 Mybatis는 SqlSessionTemplate 객체를 이용하는데 

이 객체는 openSession() 메서드를 이용해 DB 세션을 열게 됩니다.

이 때 autocommit 값을 true / false 로 지정할 수 있는데 별도로 지정하지 않으면 false 입니다.

 

Mybatis 설정 부분을 확인해보시거나 DB쪽을 확인해보시기 바랍니다.

감사합니다.

chaelynjang님의 프로필 이미지
chaelynjang

작성한 질문수

질문하기