분류 전체보기(37)
-
김영한님 JPA 강의를 들으며 알게된 정보 - 지연 로딩 & 즉시 로딩
JPA는 지연 로딩과 즉시 로딩을 둘 다 지원한다.지연 로딩과 즉시 로딩에 대해 알아보자.해당 자료로 간단하게 설명을 해보겠다.MEMBER와 TEAM이 있다. MEMBER와 TEAM은 연관관계가 있고, 어떨 때는 MEMBER만 쓰이고 어떨 때는 MEMBER와 TEAM이 같이 사용 될 경우가 있다. 만약 로직을 짤 때 MEMBER를 조회 할 때 항상 TEAM이 같이 사용이 된다면? TEAM의 사용 빈도가 올라가게 되므로 즉시 로딩으로 한번에 MEMBER를 조회할 때 TEAM을 같이 조회하는 것이다. 그렇게 된다면 네트워크 통신이 줄고 DB 간에 이동도 줄일 수 있다고 한다. 하지만 MEMBER 조회할 때 TEAM을 사용하는 빈도가 매우 적다면 MEMBER만 조회하는게 성능이 좋을 것이다. 그러므로 지연 로..
2024.05.13 -
Spring-boot & AWS S3 연동 이미지 업로드 - (2)
https://kjy154969.tistory.com/48 - Spring-boot & AWS S3 연동 이미지 업로드 - (1) Spring-boot & AWS S3 연동 이미지 업로드 - (1)S3 란?AWS(아마존 웹 서비스)가 제공하는 클라우드 스토리지 서비스이다. 다양한 유형의 미디어(파일, 데이터 등)를 저장하고 관리하는데 사용되는 웹 기반 스토리지 시스템이다. 저장하는 데이터kjy154969.tistory.com 이전 글에서는 AWS S3 버킷 생성 후 정책 설정까지 완료하였다. 이번에는 스프링 부트와 연동을 해보도록 하자. AWS cloud와 연동시켜서 S3를 사용하기 위해 build.gradle 파일에 해당 코드를 입력해준다.implementation 'org.springframework..
2024.04.28 -
Spring-boot & AWS S3 연동 이미지 업로드 - (1)
S3 란?AWS(아마존 웹 서비스)가 제공하는 클라우드 스토리지 서비스이다. 다양한 유형의 미디어(파일, 데이터 등)를 저장하고 관리하는데 사용되는 웹 기반 스토리지 시스템이다. 저장하는 데이터 양에 대한 비용이 저렴하고, 저장할 수 있는 데이터의 양도 굉장히 많다고 한다. 스프링 부트와 Amazon S3 연동 프로젝트 진행을 하다가 사용자의 프로필 사진을 저장하는 기능을 구현 하는데에 있어서 사용자가 많아질 경우를 가정해 많은 이미지를 저장을 해도 비용이 저렴하게 나오는 S3를 사용하려고 한다. S3 버킷 생성오른쪽에 보이는 '버킷 만들기' 버튼을 눌러 생성을 시작해준다.'버킷 이름' 칸에 자신이 짓고자 하는 버킷 이름을 적어준다.객체 소유권은 한 계정에서 관리하기 위해 'ACL 비활성화됨(권장)'을..
2024.04.25 -
SpringBoot 축구 팀 CRUD 초초초미니 프로젝트 - 축구팀 삭제기능 구현
삭제도 쉽다! 파라미터 id 값을 받아 서비스에게 넘겨준다. @DeleteMapping("/api/soccer-team/{id}") public ResponseEntity deleteSoccerTeam(@PathVariable Long id){ Team deleted = soccerteamService.deleteSoccerTeam(id); //삭제가 잘 되었는가? return (deleted != null) ? ResponseEntity.status(HttpStatus.NO_CONTENT).build(): ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null); } 서비스에서 deleteSoccerTeam 메서드를 만들어 삭제 기능 구현을 한다. socce..
2024.04.22 -
SpringBoot 축구 팀 CRUD 초초초미니 프로젝트 - 축구팀 수정 구현
그동안의 기능을 구현한 과정을 보면 자세한 부분에 있어서는 이제는 이해가 될 것이다. 컨트롤러 id 값과 받은 정보를 받은 dto를 soccerteamService 로 보내주고 해당 서비스에서 요리(데이터 처리)를 해주면 된다. @PatchMapping("/api/soccer-team/{id}") public ResponseEntity createSoccer(@PathVariable Long id, @RequestBody SoccerteamDto dto){ Team updated = soccerteamService.updateSoccerTeam(id, dto); //수정이 잘 되었는가? return (updated != null) ? ResponseEntity.status(HttpStatus.OK).bo..
2024.04.22 -
SpringBoot 축구 팀 CRUD 초초초미니 프로젝트 - 축구팀 생성 구현
자 이제 축구팀을 생성할 것인데 여기에는 클라이언트의 body에서 데이터 정보를 입력하면 그것을 받아줄 dto(그릇 이라고 생각하면 됨)를 만들고 dto를 엔티티에 저장 할 예정이다. 실습 해보자 생성은 POST 메서드로 받는다 엔드포인트는 /api/soccor-team 으로 해준다. 여기에 파라미터 값에 body를 받아주기 위해 @RequestBody 어노테이션과 dto인 SoccorteamDto를 이용한다. @PostMapping("/api/soccer-team") public Team soccorTeam(@RequestBody SoccorteamDto dto){ } 서비스에게 데이터를 담은 dto를 넘겨주고, 서비스에게서 create 수행이 잘 되었는지 아닌지 반환을 받고 잘 생성이 되었는지 다시 ..
2024.04.22