본문 바로가기
반응형

Spring Framework11

Spring Data JPA 2.4.15 Document Memo 여는 글 이 글은 Spring Data JPA 2.4.15 도큐먼트를 읽고 인상 깊었던 내용 일부만을 무자비한 의역 및 관련 개념을 정리하는 글 입니다. https://docs.spring.io/spring-data/jpa/docs/2.4.15/reference/html/#reference 4. Working with Spring Data Repositories 스프링 데이터 리포지토리 추상화의 목표는 데이터 액세스 레이어를 구현하는데 필요한 많은 보일러플레이트 코드를 막대하게 줄이는 것이다. 4.1. Core concepts 스프링 데이터 리포지토리 추상화의 중심이 되는 인터페이스는 Repository 입니다. 리포지토리는 관리 하기 위한 도메인 클래스와 아이디 타입을 가집니다. 이 인터페이스는 주로 .. 2022. 6. 14.
Dependency Injection 의존성 주입 학부 시절을 시작으로 Spring Framework을 정말 긴 시간을 써왔고, 기본적인 이해는 있다고 생각해왔다. 그런데 우연한 계기로 DI에 대해서 질문을 받았는데, 스프링의 IOC 컨테이너에 대해 설명하고 있는 내 자신을 발견했다. 간단히 다른 하나의 객체가 다른 객체에 의존성을 제공한다의 정도로 이해하는 것이 아니라. 명확한 정의와 의존성을 주입 해주는 이유, 그리고 이를 통해 얻을 수 있는 것과 잃을 수 있는것, 마지막으로 구현 방법에 대해 체계적으로 정리하는 시간을 가지려 한다. 의존성 주입, 제대로 알아보자! 의존성이란? 의존성 주입에 대해 공부하기 앞서 의존성에 대해 이해할 필요가 있다. 의존성은 결합도(coupling)와 관련성이 높은데, 그 이유가 의존성이 높으면 결합도가 높다고 표현하기.. 2021. 10. 22.
Spring Cloud API Gateway를 활용한 따닥 방지 보호되어 있는 글 입니다. 2021. 10. 20.
@Async Default Pool 보호되어 있는 글 입니다. 2021. 10. 19.
Spring REST Docs 관련 글 woowabros.github.io/experience/2020/05/13/rest-docs.html 2020. 10. 11.
[퍼온 글] 스프링 부트, @RunWith가 더이상 보이지 않는 이유 출처: www.whiteship.me/springboot-no-more-runwith/ 스프링 부트, @RunWith가 더이상 보이지 않는 이유 왜 최근 버전의 스프링 부트를 사용한 프로젝트의 테스트 코드에서 @RunWith를 더이상 볼 수 없는지 살펴보겠습니다. www.whiteship.me 정리하자면, 최근 스프링 부트는 JUnit 5를 사용하기 때문에 더이상 JUnit 4에서 제공하던 @RunWith를 쓸 필요가 없고 (쓰고 싶으면 쓸 수는 있지만), @ExtendWith를 사용해야 하지만, 이미 스프링 부트가 제공하는 모든 테스트용 애노테이션(@SpringBootTest) 에 메타 애노테이션으로 적용되어 있기 때문에 @ExtendWith(SpringExtension.class)를 생략할 수 있다. 2020. 10. 11.
DTO vs VO vs Entity 여는 글 DTO, VO, Entity는 데이터를 담는 공간으로써, 의문을 가져왔습니다. 이젠 그 의문점을 해결해야 한다는 확신에 이 글로 정리해보려 합니다. DTO (Data Transfer Object, 데이터 전송 객체) 레이어 간에 데이터를 전달하는 객체 입니다. 여기서 레이어는 User - Controller - Service - DAO(Repository) 에서 각 단계를 말하며, Setter 와 Getter 를 가집니다. 하지만 별도의 비즈니스 로직을 가지지는 않습니다. 결론적으로, 비슷한 특성을 가진 값을 하나의 객체로 묶어 레이어간 전달에 유용하도록 만든 자료 구조라고 정리할 수 있겠습니다. . VO (Value Object, 값 객체) DTO와 동일하게 레이어와 레이어 간에 데이터를 전달.. 2020. 7. 22.
[퍼온 글] QueryDsl * 확장된 CustomRepository와 JpaRepository를 함께 사용하는 방법 - 링크: https://m.blog.naver.com/PostView.nhn?blogId=writer0713&logNo=221587336690&proxyReferer=https:%2F%2Fwww.google.com%2F * com.mysema.queryDsl vs com.querydsl - 요약: 스프링 부트 최신버전을 사용할 때는, querydsl은 3버전인 com.mysema.queryDsl을 사용해서는 안되며, 버전 충돌로 정상 동작하지 않을 수 있다. 스프링 부트 최신버전은 querydsl4버전인 com.queryDsl을 사용해야 한다. - 링크: https://blog.woniper.net/317 2020. 5. 13.
[퍼온 글] 연관관계 편의 메서드에 대하여 참고 링크: https://www.inflearn.com/questions/16308 먼저 연관관계 편의 메서드를 정의하면 다음과 같습니다. (사실 이 연관관계 편의 메서드라는 이름은 제가 만들었습니다. ㅎㅎ) 연관관계 편의 메서드: 양방향 연관관계를 한번에 설정하는 편리한 메서드 질문이 엔티티 A와 B가 서로 양방향 연관관계인데, 어디에 연관관계 편의 메서드를 두는게 좋은가?로 이해했습니다. 우선 3가지 선택지가 있습니다. - 엔티티 A에 둔다. - 엔티티 B에 둔다. - 엔티티 A,B에 둘다 둔다. 둘다 두는 것은 혼란을 가중하기 때문에 제외하고, A, B중 하나를 선택해서 사용하는 것이 좋다 생각합니다. 그러면 여기서 A,B 중에 하나를 선택해야 하는데 사실 이 부분이 고민하셨던 것 처럼 정답이 없.. 2020. 5. 4.
반응형