일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- spring
- 스프링 핵심 원리
- JDBC
- Greedy
- SpringBoot
- 알고리즘
- 인프런
- JPQL
- 백준
- pointcut
- Proxy
- Spring Boot
- Android
- jpa
- kotlin
- transaction
- AOP
- QueryDSL
- 스프링
- db
- 스프링 핵심 기능
- Thymeleaf
- springdatajpa
- 그리디
- Servlet
- Exception
- 김영한
- http
- java
- 자바
- Today
- Total
목록JPA/영속성 (10)
개발자되기 프로젝트
The Stpring team recommends that you annotate only concrete classeds with the @Transactinal annotation as apposed to annotating interfaces. you certainly can place the @Transactional annotation on an interface( or an interface method), but this works only as you would expect it to if you use inferface-based proxies. 1. @Transactional은 interface보다는 구체 class에 사용하는 것을 권장 2. interface는, interface-ba..
Cascade (영속성 전이) 1. Cascade란? 영속성 전이로, Entity의 상태(생애주기)의 변화가 있을 때 연관 관계의 entity에 상태변화(생애주기)를 전파한다. 즉 Cascade는 연관관계의 entity에 영속성을 전이시켜준다. 따라서 @OneToOne, bsh-developer.tistory.com 1. Cascade REMOVE ALL 아래 속성 모두 포함. 항상 영속성 전이. PERSIST 부모 persist시 연관 entity도 persist MERGE Transaction종료 후 detach 상태에서 연관 entity 수정/추가 후 부모 entity가 merge()를 하면 연관 entity의 변경, 추가내용 저장됨. REMOVE 삭제 시 연관 entity도 삭제 REFRESH e..
현재 Transaction과 다른 class의 transaction 간에 처리가 어떻게 되어야 할까? 교통정리 어떻게 할지 정의. REQUIRED default 조건 기존에 사용하는 transaction이 있다면 그 transaction사용하고 없다면 새로운 transaction생성 ex) .save() : 상위에 @Transactional 없으면 각 save()가 하나의 transaction 즉, 상위 transaction과 완전히 동일한 transaction REQUIRES_NEW 무조건 새로운 Transaction 생성, 호출하는 쪽의 rollback & commit에 관계 없이 자체적으로 commit & rollback 진행 SUPPORTS 호출하는 쪽에 Transaction이 있다면 사용한다. ..
2021.07.04 - [JPA/영속성] - Transaction Manager-3 : @Transactional 옵션 Transaction Manager-3 : @Transactional 옵션 Transaction Manager - 2 Transaction Manager - 1 1. Transaction이란? Data Base에서 다루는 개념. DB명령어들의 논리적인 묶음이다. Transaction의 성질 : ACID A : atomatic(원자성), 부분적의 성공을 허용.. bsh-developer.tistory.com 4. READ_COMMITTED READ COMMIT으로 수정하여 똑같이 실행하자.(wating에서 rollback) @Transactional(isolation = Isolation..
Transaction Manager - 2 Transaction Manager - 1 1. Transaction이란? Data Base에서 다루는 개념. DB명령어들의 논리적인 묶음이다. Transaction의 성질 : ACID A : atomatic(원자성), 부분적의 성공을 허용하지 않는다. 중간 단계까.. bsh-developer.tistory.com 1. isolation : Transaction의 격리 수준. 동시에 발생하는 tracsaction간에 data 접근을 어떻게 할지 정함. 5가지 Isolation 단계를 제공함. LEVEL 격리단계 REMARK - DEFAULT DB의 default 격리단계를 적용함 MySQL은 기본 격리단계 = REAPETABLE_READ 0 READ_UNCOMM..
Transaction Manager - 1 1. Transaction이란? Data Base에서 다루는 개념. DB명령어들의 논리적인 묶음이다. Transaction의 성질 : ACID A : atomatic(원자성), 부분적의 성공을 허용하지 않는다. 중간 단계까지 실행되고 실패하는 일이 bsh-developer.tistory.com Transaction 의 특징 : All or Nothing, DB에 전부 반영하거나 전부 안하거나, 원자성 1. @Transactional 없을 때 예외발생 시 에 기존에 붙여준 @Transactional을 주석처리하자. @Service @RequiredArgsConstructor public class BookService { // @Autowired //요즘에는 Au..
1. Transaction이란? Data Base에서 다루는 개념. DB명령어들의 논리적인 묶음이다. Transaction의 성질 : ACID A : atomatic(원자성), 부분적의 성공을 허용하지 않는다. 중간 단계까지 실행되고 실패하는 일이 없도록 하는 것 C : consistance(일관성), 고립된 트랜잭션의 수행이 데이터베이스의 일관성을 보존해야 한다. 즉, 성공적으로 수행된 트랜잭션은 정당한 데이터들만을 데이터베이스에 반영해야 한다. 예를들어 예금 이체의 같은 경우 두 계좌의 금액의 합은 이체 전후 동일해야 한다. I : isolation(독립성), transaction 내 data 조작에 대해서는 다른 transaction으로부터 독립적이다. 트랜잭션을 수행 시 다른 트랜잭션의 연산 작업..
bsh6463/BookManager Contribute to bsh6463/BookManager development by creating an account on GitHub. github.com 1. 비영속상태, new, transient 영속성 컨텍스트가 해당 엔티티 객체를 관리하지 않는 상태 @Transient가 적용된 필드는 영속화에서 제외, 일종의 자바 object로 처리됨. - @Transient설명은 아래 글 참고 @Entity 속성 2 1. SQL이란? SQL 종류 들어가기에 앖서서 SQL(Structed Query Language, 구조적 질의언어)에 대해서 간략하게 알아보자. SQL은 관계형 DB의 관리시스템의 DATA를 관리하기 위한 만들어진 특수 목적의 프로그래 bsh-develo..