
교내 팀 프로젝트에서 적용한 내용입니다.우리 서비스에 회원이 되기 위해서는 구글, 카카오 소셜 로그인을 한 후 → 문자 인증을 통해 회원가입이 되는 시스템을 구축하려 했습니다. 문자 인증을 하기 위해서는 알리고 문자 API를 사용하였습니다. 4자리의 코드를 랜덤으로 생
JAVA17, Spring Boot 3.2.2, Mysql 8.3.0 을 기준으로 수행을 하겠다.Team와 Member 엔티티가 일대N 관계를 가지고 있고 다음과 같이 데이터를 가지고 있다.@ManyToOne에서 즉시 로딩으로 설정하고 멤버 엔티티에서 팀 이름을 가져오
연관 관계에서 발생하는 이슈로 연관 관계가 설정된 엔티티를 조회할 경우에 조회된 데이터 갯수(n) 만큼 연관관계의 조회 쿼리가 추가로 발생하여 데이터를 읽어오게 된다. 이를 N+1 문제라고 한다.팀 엔티티와 멤버 엔티티와 1대다 관계를 가지고 있다.팀 엔티티에는 3개의
위 페이지와 같은 환경에서 계속 실행을 해보겠다.모든 Team의 이름과, 각 Team의 Member들의 이름까지 알아야 하는 경우 Pagination을 이용하여 조회를 한다고 가정하자.N+1문제를 방지하기 위해 Fetch Join을 사용하였고, Pagealbe을 이용해

사용자의 추억이 담긴 ‘capsule’ 엔티티의 세부 정보를 조회해야한다. ‘capsule’ 엔티티는 ‘image’ 엔티티와 ‘video’ 엔티티 각각 1대N 관계를 가지고 있다. capsule 하나의 세부 정보를 조회할 때는 capsule 테이블의 속성들은 물론 ca

현재 진행중인 교내 프로젝트에서 락을 걸어야하는 경우가 발생하여 DB로 사용중인 Mysql 8.X(Engine=InnoDB)의 Lock에 대해 알아보고자 합니다. 해당 글은 Mysql 8.0 공식 문서를 참고하여 작성된 글입니다. 자세한 내용은 하단의 Reference

현재 교내에서 진행중인 프로젝트에서 동시성 문제를 락을 통해 해결해야 할 필요가 생겼습니다.그룹장은 그룹에 그룹원들을 초대할 수 있습니다. 그룹의 최대 인원은 30명입니다.그룹 요청을 받은 사용자들은 그룹 요청 수락을 하여, 그룹에 추가가 될 수 있습니다.따라서 사용자