Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- springboot #스프링부트
- #프로그래머스 #코딩 #자바 #수열과구간쿼리3
- JPA
- #프로그래머스 #코딩 #자바 #문자열묶기
- #프로그래머스 #코딩 #자바 #2의영역
- springboot #sprinigbatch #job #step #스프링부트배치 #스프링배치
- #프로그래머스 #코딩 #자바 #리스트자르기
- springboot #스프링투브
- 깃
- springboot #스프링부트 #junit #junit #제이유닛 #단위테스트코드 #테스트 #test #test
- #프로그래머스 #코딩 #자바 #왼쪽오른쪽
- #신념 #철학 #유쾌함 #후회 #자책
- #프로그래머스 #코딩 #자바 #문자열이몇번등장하는지세기
- 코딩 #자바 #조건에맞게수열변환하기2
- 컨트롤러테스트코드
- #프로그래머스 #코딩 #자바 #문자열여러번뒤집기
- #프로그래머스 #코딩 #자바 #수열과구간쿼리2
- #프로그래머스
- #springbatch #springboot #스프링배치 #스프링부트 #배치 #joblauncher #job #step #itemreader #itemprocessor #itemwriter
- 제이피에이
- dbeaver sqlite
- springboot #@beforeall #@afterall
- Git
- #batch #스케줄러 #배치스케줄러
- @autoconfigurationmockmvc
- #프로그래머스 #자바 #코딩 #전국대회선발
- #springbatch #springboot #스프링배치 #스프링부트 #배치 #joblauncher #job #step #batchconfig #배치설정 #chunk
- #프로그래머스 #자바 #코딩 #무작위로k개의수뽑기
- springboot #스프링부트 #junit #제이유닛 #라이프사이클 #@beforeall #@beforeeach #@afterall #@aftereach
- #프로그래머스 #자바 #코딩 #배열만들기2
Archives
- Today
- Total
David의 블로그
[Spring Boot] JPA 커스텀 쿼리 메소드에 @Transactional 붙이기 본문
반응형
[@Transactional이란???]
Spring 프레임워크에서 제공하는 어노테이션으로, 선언적 트랜잭션 관리를 위해 사용된다.
이 어노테이션이 붙은 메소드를 실행될 때, Spring은 해당 메소드 실행을 하나의 트랜잭션으로 묶어 관리를 한다.
여기서 잠깐 트랜잭션이란
데이터베이스의 상태를 변경하기 위해 수행하는 작업의 단위이다. 간단히 말해 INSERT, UPDATE, DELETE와 같은
쿼리를 사용해 하나의 묶음으로 취급한다는 것이다.
다시 이어서 이야기를 해보겠다.
JPA에서 기본적으로 제공하는 쿼리 메소드 (deleteAll(), deleteById()..)는 기본적으로 @Transactional이 적용돼 있다.
따라서 기본 쿼리 메소드를 사용하는 경우에는 서비스 로직에만 어노테이션을 붙여 트랜잭션으로 관리하는 것이 일반적이다.
잠시 캡처된 이미지를 보겠다.
[ org.springframwork.data.jpa.repository,support.SimpleJpaRepository.class]
보는 바와 같이 선언을 따라 들어간 모습이고, 어노테이션이 붙어 있는 것을 확인할 수 있다.
나 같은 경우에는 커스텀을 해줘야 했기 때문에,
서비스, 레포지토리 단위에도 어노테이션을 설정해줬다.
[UsersService.java]
[UsersRepository.java]
이렇게 말이다.
끝!!
반응형
'프로그래밍 > Spring Boot' 카테고리의 다른 글
[Spring Boot] Spring Boot에 SQLite3 연동하기 (0) | 2025.05.10 |
---|---|
[JUnit]JUnit으로 Controller 테스트 코드 만들기 (2) | 2025.05.06 |
[JUnit] @AfterAll @BeforeAll메소드 사용할 때 주의점. (4) | 2025.05.05 |
[JUnit] JUnit 테스트 코드 라이프 사이클 (2) | 2025.05.02 |
[JUnit] 자바 언어를 위한 단위 테스트 프레임워크 JUnit (2) | 2025.05.02 |