@ControllerAdvice와 @ExceptionHandler를 이용하여 예외처리 하는 것을 연습했다.

커스텀Exception을 처리하는 것은 좀 더 공부해야할 것 같다.

 

이번 주 페어와 연관관계에 대해 얘기했다.

 

User정보를 받아와 Article을 생성할 때, User에게도 Article을 추가해줘야하는 이유

=> 아마 DB단에서는 상관이 없을 텐데, Java객체를 사용할 때 DB에서 추가적으로 조회하지 않아도 User가 가진 Article의 정보를 양쪽으로 업데이트 해주는 것이 데이터 정합성이 맞다고 생각함

--------------------------------->공부한 뒤에 포스팅하기

 

@OneToMany에서 발생할 수 있는 문제

=> User를 조회하면 Article을 다 가져와야하고, Article은 또 Comment를 다 가져와야한다.

근데 fetchType을 lazy로 했을 경우에, 객체가 사용될 때 쿼리가 날라간다.

그럼 User객체에 Article을 List로 만들어서 넣어줄 때, Article을 조회하는 쿼리가 날라갈것이다.

그럼 Article을 가져올 때 Comment를 List로 만들어줘야하니까 매 번 쿼리가 새로 날라갈것임.

이렇게 연관관계에서 쿼리가 불필요하게 많이 날라가는 문제를 N+1 문제라고 함.

==> fetch타입을 join으로 해놓으면, 처음 User를 find할 때, fetchtype이 join으로 되어있는 컬럼들을 한꺼번에 가져와 이런 문제를 해결할 수 있음.

---------------------------->까지 얘기했는데, 검증 안되고 우리가 이해만 한 내용이므로 나중에 따로 공부해서 포스팅해야함

 

 

https://imslo.tistory.com/67 게시판 CRUD 업그레이드

 

HttpServletRequest,  HttpServletResponse로 api통신 간에 데이터를 주고받는 법을 약간 익힘

==>주말에 공부 더 하기

 

JWT 사용법 익힘

 

JPA 연관관계 활용해봄

==> 주말에 공부 더 하기

https://imslo.tistory.com/62

Springboot 및 서버 이해 // SQL // JPA  

https://imslo.tistory.com/41

 

 

SpringBoot 및 서버 이해 // SQL // JPA

서비스가 커지고 문제가 복잡해질수록, 이를 처리하기 위한 소프트웨어의 아키텍쳐적인 부분이 중요해진다. 내가 진행했던 토이프로젝트의 서버는 크게 세 가지 일을 했다. -새로운 데이터를

imslo.tistory.com

Spring MVC 패턴 이해하기

https://imslo.tistory.com/55

 

Spring MVC 패턴 이해하기

Model - View - Controller의 디자인 패턴. 비지니스 로직과 화면을 구분하는 데 중점을 두고있다. Model : 데이터와 비지니스 로직을 관리 View : 레이아웃과 화면을 처리 Controller : 사용자의 요청을 필요

imslo.tistory.com

IntelliJ 콘솔창 한글 깨짐

https://imslo.tistory.com/40

 

IntelliJ 콘솔창 한글 깨질때

https://www.lesstif.com/java/intellij-file-console-encoding-121012310.html

imslo.tistory.com

알고리즘

https://imslo.tistory.com/43

 

[프로그래머스 lv.2 - 150368] 이모티콘 할인행사 // Java 재귀, DFS

https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞

imslo.tistory.com

 

https://imslo.tistory.com/36

 

[프로그래머스 lv.2 - 72412번] 순위 검색 // Java Map, Regex, BinarySearch 활용

https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는

imslo.tistory.com

 

https://imslo.tistory.com/37

 

[프로그래머스 lv.2 - 64065] 튜플 // Java regex, Comparator 활용

https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는

imslo.tistory.com

 

https://imslo.tistory.com/35

 

IntelliJ 디버거 활용 - Exception 조건설정

알고리즘 문제를 푸는데, for문 안에서 정규식을 처리하고 특정한 로직을 수행하는데 정규식의 어떤 케이스에서 에러가 나는지 몰라 함수 여러군데에 print문을 찍어 확인하였다. 코드도 지저분

imslo.tistory.com

 

https://imslo.tistory.com/33

 

[프로그래머스 lv.1 - 12915번] 문자열 내 마음대로 정렬하기 // Java Comparator 활용

https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는

imslo.tistory.com

 

https://imslo.tistory.com/34

 

[프로그래머스 lv.1 -42889번] 실패율 // Java Map, Comparator 활용

https://school.programmers.co.kr/learn/courses/30/lessons/42889 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는

imslo.tistory.com

 

https://imslo.tistory.com/31

 

 

https://imslo.tistory.com/32

 

Java, Python 알고리즘 cheat sheet

계속 함수나 클래스, 메서드 까먹어서 적는 cheat sheet. 새로운거 배울때마다 업데이트하기 ! === === 내부 : 클래스명 ----- ----- 내부 : 메소드 ===========내장배열========== int[] intArr = {1,2,3,4} char[] charArr

imslo.tistory.com

 

'일기 > TIL' 카테고리의 다른 글

23.04.10 // IntelliJ 디버거 활용 - Exception 조건설정  (0) 2023.04.16
23.04.09 // Java 알고리즘 문제풀이  (0) 2023.04.16
23.04.05 // Java공부 - 3  (0) 2023.04.16
23.04.04 // Java 공부 - 2  (0) 2023.04.16
23.04.03 // Java공부 - 1  (0) 2023.04.16

+ Recent posts