일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- hashcode
- 테스트 코드
- VUE
- stream
- AOP
- Spring
- static
- StringBuilder
- 열 속성
- MSA
- 인덱스
- select_type
- 조합
- 생성자 주입
- cache
- equals
- jwt
- SQL
- java
- jpa
- DDL
- docker
- 재정의
- 필드 주입
- KEVISS
- redis
- lambda
- Exception
- DI
- Test
- Today
- Total
목록CS (3)
백엔드 개발자 블로그
Spring Data JPA에서 새로운 Entity인지 판단하는 방법은 무엇일까요?백엔드와 관련된 질문이에요.@Overridepublic boolean isNew(T entity) { if(versionAttribute.isEmpty() || versionAttribute.map(Attribute::getJavaType).map(Class::isPrimitive).orElse(false)) { return super.isNew(entity); } BeanWrapper wrapper = new DirectFieldAccessFallbackBeanWrapper(entity); return versionAttribute.map(it -> wrapper.getP..
엔티티 매니저에 대해 설명해주세요.백엔드와 관련된 질문이에요.엔티티 매니저에 대해 알기 위해선 영속성 컨텍스트에 대해 알아야 합니다. 영속성 컨텍스트는 엔티티를 영구 저장하는 환경으로 1차 캐싱, 쓰기 지연, 변경 감지를 통해 영속 로직을 효율적으로 할 수 있게 해줍니다. 이러한 효율적인 영속 로직 수행을 위해서 엔티티는 영속성 컨텍스트에 관리되어야 합니다. 이런 작업을 도와주는 것이 바로 엔티티 매니저입니다. 엔티티 매니저는 엔티티의 상태를 변경하고, 영속성 컨텍스트와 상호작용함으로써 영속 로직을 수행하는 역할을 가지고 있습니다.조금 더 구체적으로 엔티티 매니저의 역할을 설명해 주실 수 있을까요? 🤔엔티티는 영속성 컨텍스트와 관련하여 4가지 상태(비영속, 영속, 준영속, 삭제)를 가질 수 있는데요. ..
JPA의 N + 1 문제에 대해서 설명해주세요.백엔드와 관련된 질문이에요.JPA N + 1 문제는 연관 관계가 설정된 엔티티를 조회할 경우에, 조회된 데이터 개수(N)만큼 연관관계의 조회 쿼리가 추가로 발생하는 현상입니다. 예를 들어, 블로그 게시글과 댓글이 있는 경우, 게시글을 조회한 후 각 게시글마다 댓글을 조회하기 위한 추가 쿼리가 발생할 수 있습니다. 이를 N + 1 문제라고 합니다.findAll 메서드의 글로벌 패치 전략 별 N + 1 문제 상황에 대해서 설명해주세요. 🤓spring data jpa에서 제공하는 repository의 findAll 메서드입니다!글로벌 패치 전략을 즉시로딩으로 설정하고 findAll()을 실행하면 N + 1 문제가 발생합니다. 이는 findAll()은 select..