본문 바로가기
반응형

jpa5

[JPA] N+1 문제 개념, 원인, 해결방안 [JPA] N+1 문제 ,개념, 원인 해결(@EntityGraph, Fetch) 관계를 갖고 있는 엔티티안에서 조회시에 발생할 수 있는 문제 1개의 쿼리를 원했지만 추가적으로 N번의 쿼리가 더 발생한다. @EntityGraph, Fetch 연관된 엔티티들을 SQL 한번에 조회하는 방법 Member N : 1 Team Member.class @ManyToOne Team team 실무에서는 지연로딩(FetchType.LAZY)을 사용하자 Team.class @OneToMay List members OneToMany는 Default가 Lazy전략이다 지연로딩 (LazyLoading) Member 조회시 Team은 각자객체로 조회해놓고 team을 사용하는 시점에 SQL이 별도로 날라간다. 설명 구현코드 //To.. 2021. 7. 13.
[프로젝트] 스프링 부트 게시판 (+ 댓글기능) 만들기 완료 05 (드림리멤버 v2) 프로젝트 특징 스프링부트 Jpa를 기반으로 꿈을 기록하는 웹서비스 드림리멤버(v1)에서 회원기능(소셜로그인 포함), 게시판 댓글기능, 게시글 검색 및 전체 페이지 페이지네이션 기능 추가 요구 명세서에 따라 프로젝트 설계 및 구현 개요 명칭 : 드림리멤버 (v2) 개발 인원 : 1명 개발 기간 : 2021.03.26 ~ 2021. 03.31 주요 기능 : 전체 게시글 조회, 회원기능, 게시글 기능, 댓글기능 개발 언어 : java 8, javascript 개발 환경 : springboot 2.4.4, jpa, spring-security, junit5, thymeleaf 데이터베이스 : mysql 형상관리 툴 : git 간단 소개 : 꿈(진짜 밤에 꾼 꿈)을 기록하는 커뮤니티 사이트 : 드림리멤버 시연영상.. 2021. 4. 1.
[프로젝트] 스프링부트 게시판 만들기 API 설계 03 (드림리멤버 v2) API 설계 유투브 youtu.be/khGIC19uLgU API 관련 수정영상 youtu.be/T03bA6pDKEM 다음 게시글 2021.03.27 - [Projects/remember_dream] - [프로젝트] 스프링 부트 게시판 만들기 화면 설계 04 (드림리멤버 v2) 2021. 3. 26.
[프로젝트] 스프링부트 게시판 만들기 요구사항 01 (드림리멤버 v2) 요구사항 회원 가입 페이지 회원가입 버튼을 클릭하기 닉네임, 비밀번호, 비밀번호 확인을 입력하기 닉네임은 최소 3자 이상, 알파벳 대소문자(a~z, A~Z), 숫자(0~9)로 구성하기 비밀번호는 최소 4자 이상이며, 닉네임과 같은 값이 포함된 경우 회원가입에 실패로 만들기 비밀번호 확인은 비밀번호와 정확하게 일치하기 데이터베이스에 존재하는 닉네임을 입력한 채 회원가입 버튼을 누른 경우 "중복된 닉네임입니다." 라는 에러메세지를 프론트엔드에서 보여주기 회원가입 버튼을 누르고 에러메세지가 발생하지 않는다면 로그인 페이지로 이동시키기 로그인 페이지 로그인, 회원가입 버튼을 만들기 닉네임, 비밀번호 입력란 만들기 로그인 버튼을 누른 경우 닉네임과 비밀번호가 데이터베이스에 등록됐는지 확인한 뒤, 하나라도 맞지 않.. 2021. 3. 26.
[프로젝트] 스프링부트 게시판 만들기 (드림리멤버 v1) (03.23 완료) 프로젝트 특징 스프링부트를 기반으로 CRUD 기능이 포함된 웹서비스 AWS에 스프링부트 프로젝트 배포 개요 명칭 : 리멤버 드림 개발 인원 : 1명 개발 기간 : 2021.03.20 ~ 2021. 03.22 주요 기능 : 전체 게시글 조회, 게시글 CRUD 개발 언어 : thymeleaf, css, javascript, java 8 개발 환경 : springboot 2.4.4, jpa, spring-security, junit5 데이터베이스 : mysql 형상관리 툴 : git 간단 소개 : 꿈(진짜 밤에 꾼 꿈)을 기록하는 커뮤니티 사이트 드림 리멤버 드림리멤버 꿈 꾼 내용을 기록하는 커뮤니티 seongbindb.shop 코드 설명 www.youtube.com/watch?v=WEPJDpo-PQU 화면 .. 2021. 3. 20.
반응형