본문 바로가기
728x90
반응형

spring boot14

Query DSL 시작하기 참고 Querydsl 기본문법 학습하기 Querydsl 다이나믹 쿼리 사용하기JPA와 비교 JPA 비교해 JPA의 장점 가독성이 좋다. JPA에서 기본적으로 제공하는 기능을 넘어서는 기능은 일반적으로 native query 옵션으로 수행한다. -> 문자열을 이어붙이는 형태이므로 오타로 인해 런타임 시 오류가 발생할 가능성이 높다. 컴파일 시점에서 에러를 체크할 수 있다. IDE의 자동 완성 기능이 지원된다. 동적쿼리를 지원한다. 단점 추가적인 학습이 필요하다. ex) member.age.gt(10)은 age > 10을 의미한다. native query문이 아니므로, RDBMS나 MySQL에서 쿼리문을 실행하기 위해서는 다시 쿼리문을 작성해야 한다. 주의 사항 jpa에서 사용되는 Entity 등의 어노테이.. 2022. 12. 12.
[Lock] 동시성 제어를 위한 JPA Lock 3. 비관적 락(Pessimistic Lock) 격리수준과 잠금 2022.12.06 - [Spring/JPA] - [Lock] 동시성 제어를 위한 JPA Lock 1. 격리수준과 잠금(락) [Lock] 동시성 제어를 위한 JPA Lock 1. 격리수준과 잠금(락) 참고 https://hackernoon.com/optimistic-and-pessimistic-locking-in-jpa [Real MySQL 8.0] https://link.coupang.com/a/GW7Yc https://zzang9ha.tistory.com/381 https://www.baeldung.com/jpa-optimistic-locking https://www.baeldung.com/jpa-pessimistic-locking http twer.tistory.com 낙관적 락(O.. 2022. 12. 8.
[Lock] 동시성 제어를 위한 JPA Lock 1. 격리수준과 잠금(락) 참고 https://hackernoon.com/optimistic-and-pessimistic-locking-in-jpa [Real MySQL 8.0] https://link.coupang.com/a/GW7Yc https://zzang9ha.tistory.com/381 https://www.baeldung.com/jpa-optimistic-locking https://www.baeldung.com/jpa-pessimistic-locking https://www.baeldung.com/java-jpa-transaction-locks Real MySQL 8.0 1 COUPANG www.coupang.com 잠금(락)과 트랜잭션, 격리수준 동시성에 영향을 미치는 요소에는 잠금과 트랜잭션, 트랜잭션의 격리 수준.. 2022. 12. 6.
[Test] DataJpaTest에서 MySQL 설정 문제 MySQL로 DB를 구성하고, application.yml에 설정까지 한 상태에서 테스트를 돌려보니 @DataJpaTest를 실행하려고 했더니 아래와 같은 'Failed to replace DataSource ~~~' 에러가 발생합니다. @DataJpaTest class UserInfoRepositoryTest { @Autowired private UserInfoRepository userInfoRepository; @Test void 정보가져오기(){ List all = userInfoRepository.findAll(); all.forEach(userInfo -> { System.out.println(userInfo.getName()); }); } } 원인 @AutoConfigureTestDat.. 2022. 12. 2.
LIST