분류 전체보기692 [TIL] 일일 회고 2022/04/17 ~ 4/22 요즘 한 일 1. 백기선님 MVC 강의 완강 보통 영한님 강의는 들으면서 나만의 방식으로 블로그에 전부 자세하기 요약정리를 하는 편인데, 기선님의 상의는 정리를 하면서 학습하지 못한것이 매우 아쉽다... 코드스쿼드 과제와 병행하기 좀 힘들다 생각하여 하지 못했다. 듣는거라도 하자는 마인드로 일단 듣기시작한 MVC강의를 드디어 완강하게 되었다! 완강하기까지 약 한달정도 걸린것 같다? 강의를 들으면서 WebMvcConfig의 사용과 dispatherServlet의 등록방식에 대한 부분이 정말 좋았다. 이후 코드스쿼드 과정이 끝난다면 2회독을 하며 강의내용을 다시 정리해볼 생각이다. 2. 코드 리뷰 정리하기 리뷰를 받은 내용중 필요한 내용을 선별적으로 정리하였다. 이런식의 피드백을 지속적으로 받는점이 매우 좋.. CODE SQUAD/회고록 2022. 4. 22. [JPA] 컬렉션 조회 최적화 - 1 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 1. 주문 조회 V1: 엔티티 직접 노출 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 컬렉션 조회같은 경우 1:N 에서 N의 데이터 수가 3건 이라면, JOIN시 1쪽 또한 3건으로 증가해 버린다. Order - OrderItem - Item 의 연관관계가 (1 : N) (N : 1) 로 되어있는 상황이다. Order 와 Item의 다대다 관계를 중간 Order_Item 테이블을 통하여 만든 상황이다. 우선 다음 컨트롤러를 확인해 보자. @RestController @RequiredArgsConstructor public class OrderApiC.. BackEnd/JPA 2022. 4. 22. [Review] 2022/04/20 1차 PR (반찬 서비스) 이번 리뷰는 wooody 께서 해주셨다! 리뷰해주셔서 감사합니다 !! 1. 질문 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 팀원과 Spring Data Jdbc를 사용하던 도중, OneToMany 관계를 이용할 때 Map을 통해 저장하도록 하였었습니다. Category : item = 1 : N 의 관계로 말이죠! 하지만 해당 Map을 이용할 경우 어그리게이트 루트에 해당되는 Category는 auto_increment가 잘 적용되지만, item은 auto_increment가 정상작동하지 않았습니다. 혹시 Map을 사용할때는 id값을 직접 지정해줘야 하나요? @Test public void itemSaveTest() { // given Category mainCate.. CODE SQUAD/FeedBack 정리 2022. 4. 21. [JPA] 지연 로딩과 조회 성능 최적화 - 2 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 간단한 주문 조회 V3: 엔티티를 DTO로 변환 - 페치 조인 최적화 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이번시간에는 Join Fetch를 이용하여 성능 개선을 이루어 낼 것 이다! 우선 V3의 메서드는 다음과 같다. @GetMapping("/api/v3/simple-orders") public List ordersV3() { List orders = orderRepository.findAllWithMemberDelivery(); return orders.stream() .map(SimpleOrderDto::new) .collect(Coll.. BackEnd/JPA 2022. 4. 20. [JPA] 지연 로딩과 조회 성능 최적화 - 1 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 간단한 주문 조회 V1: 엔티티를 직접 노출 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 다음과 같은 controller가 있다고 해보자. (잘못 만든 컨트롤러이다. 오류 상황을 보이기 위한 목적이다) @RestController @RequiredArgsConstructor public class OrderSimpleApiController { private final OrderRepository orderRepository; @GetMapping("/api/v1/simple-orders") public List ordersV1() { List.. BackEnd/JPA 2022. 4. 19. [TIL] 일일 회고 2022/04/14 ~ 4/17 오늘 한 일 1. 백기선의 REST API 강좌 수강하기 rest api를 조금더 깊이있게 공부하기위 해서 지난주부터 듣기 시작한 강의를 72% 까지 들었다. 강의에서 핵심적인 부분이 한번에 이해되지 않아 2번 반복하여 들었더니 명확하게 이해가 된 것 같다. 실질적인 적용을 해보고 싶어 지난 2주동안 개발해오던 todo list 팀 프로젝트에 개인적으로 적용해보면서 연습하였다. REST API를 깊이있게 공부하면서 다음 2가지에 대하여 깊이있게 이해하게 되었다. 1) self-descriptive한 message를 만들 수 있게 되었으며 2) HATEAOS를 지키는 API를 구현할 수 있게 되었다. Spring이 진짜 여러모로 지원을 많이 해줘서 너무 좋다! 다음은 예시로 만들어본 event에 대한 Te.. CODE SQUAD/회고록 2022. 4. 17. [REST API] 그런 REST API로 괜찮은가? naver D2 에서 발표를 보고 정리한 글 입니다. 문제될시 삭제하도록 하겠습니다! 다음 영상에 대한 정리를 간략하게 나마 해보았습니다! 1. 글을 쓰게 된 이유 그동안 REST에 대하여 명확하게 인식하지 못하고 무분별 하게 사용하고 있다는 느낌을 받았다. 따라서 관련된 영상중 가장 감명깊게 봤던 위 영상을 정리겸 복습하고 싶어 이 글을 작성하였다. 1) REST 란? REST는 REpresentational State Transfer의 약자이다. 하지만 위 글만 보고 이해할 수 있는 사람은.... 아마 창시자 정도?? 이에대한 부가적인 설명으로, 발표 영상에서는 다음과 같이 상호운용성 에 대하여 강조해 주셨다. a way of providing interoperability between comput.. Life/컨퍼런스 2022. 4. 17. [Review] 2022/04/10 2차 PR 1. 코드 리뷰 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1. 기존 순서와 겹치는 경우 순서가 겹치는 경우 해당 1번이 뒤로 밀리고, 그 사이에 삽입 되도록 하였다. 원래의 순서 1번은 2번이 되게 될 것 이다! 2. 초기화 메서드 추출하기 초기화에 해당되는 부분이다. 위 코드는 생성자에서 한번 호출되기 때문에 사실 따로 분리시키지는 않았었다. 리뷰어님의 말씀처럼 메서드로 뽑을 수 도 있지만, 그냥 명시적으로 생성자 안에서 초기화 하고 있음을 보이는 것 또한 좋다 생각한다! 3. 로직을 함수로 더 분리하기 함수 안에 여러 로직들이 퍼져 있다. 관련된 하나의 덩어리 들 끼리 메서드로 뽑아 주어야 할것 같다. CODE SQUAD/FeedBack 정리 2022. 4. 14. [TIL] 일일 회고 2022/04/11 ~ 4/13 오늘 한 일 1. 백기선의 REST API 강좌 수강하기 rest api에 대한 기본지식이 많이 부족하다 느끼게 되어 다음 강좌를 듣게 되었다. 약 절반정도 들은 상황인데, 아직 까지는 강의가 만족스러운 상황이다!! 이번주 까지 완강 하고, 다음 주 프로젝트부터 당장 적용해봐야겠다! 2. 협업 프로젝트 ㅎㅎ 같은 조 팀원인 땃x 님 덕분에 2주를 날리고 있다. 블로그 개설 이후 누군가를 비방하는 이글이 처음일 것 이다.... 어떻게 사람이 이토록 자기 생각만을 우선시 할 수 있는지 그게 궁금하다... 남의 생각은 아이디어가 나쁘며, 자신의 아이디어만이 더 좋다 생각하는 사람과 2주 협업하니까 진짜 스트레스가 엄청 나다... 아직도 2일 더 남았다니.... 빨리 끝났으면 좋겠다 ㅠ,ㅠ.... 코드도 같이 .. CODE SQUAD/회고록 2022. 4. 13. [JPA] 변경감지와 병합(merge) 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 상세히 기록하고 얕은부분들은 가겹게 포스팅 하겠습니다. 세션 14. 변경감지와 병합 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 준영속 엔티티에 대하여 알아보자. 준영속 엔티티는 영속성 컨텍스트가 더이상 관리하지 않는 엔티티를 의미한다. 다음 코드를 살펴보자. @PostMapping("/items/{itemId}/edit") public String updateItem(@ModelAttribute("form") BookForm form, @PathVariable String itemId){ Book book = new Book(); book.setId(form.getId()); book.setName(.. BackEnd/JPA 2022. 4. 11. [TIL] 일일 회고 2022/04/06 ~ 4/09 오늘 한 일 1. JPA 복습하기 예전에 들었던 영한님의 JPA강좌를 빠르게 복습하였다. 한주동안 남는 시간에는 거의 JPA 강의를 들으며 복습한 것 같다. 빨리 JPA 활용 2편 까지 들어서 APi로 설계하는 방식에 대한 공부를 좀더 해봐야 겠다. 2. 코드리뷰 정리하기 HTML 삽입 미리보기할 수 없는 소스 팀원과 처음 Work라는 도메인 모델을 만들때 2가지 방식의 생성방법에 대하여 논의 하게 되었습니다. 생성자 방식 빌더패턴 1) 생성자" data-og-host="blogshine.tistory.com" data-og-source-url="https://blogshine.tistory.com/362" data-og-url="https://blogshine.tistory.com/362" data-o.. CODE SQUAD/회고록 2022. 4. 10. [Review] 2022/04/06 1차 PR 1. 질문 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 팀원과 처음 Work라는 도메인 모델을 만들때 2가지 방식의 생성방법에 대하여 논의 하게 되었습니다. 생성자 방식 빌더패턴 1) 생성자 이용하기 public class Work { // 생략... public Work(String title, String content, String author) { this.title = title; this.content = content; this.author = author; this.workStatus = WorkStatus.TODO; // 초기값 자동 지정 this.createDateTime = LocalDateTime.now(); // 초기값 자동 지정 this.las.. CODE SQUAD/FeedBack 정리 2022. 4. 10. 이전 1 ··· 25 26 27 28 29 30 31 ··· 58 다음