1. JpaRepository 란 ?Spring Data JPA 에서 제공하는 DB접근을 위한 인터페이스JPA 기반으로 DB와의 상호작용을 간편하게 해줌CRUD 작업을 수행하는 메서드를 기본 제공개발자가 직접 구현할 필요 x ! 2. JpaRepository 사용 방법2-1. 라이브러리 추가build.gradleimplementation 'org.springframework.boot:spring-boot-starter-data-jpa' 2-2. Repository 작성JpaRepository를 상속받음JpaRepositoryimport org.springframework.data.jpa.repository.JpaRepository;public interface UserRepository extends J..
All Categories
0. 사전 지식0-1. HTTP웹 서비스 : 정보 요청, 응답 시 HTTP 사용마찬가지로 스프링도 HTTP 사용 → 데이터 송수신직접 작성이 아닌 스프링에서 제공하는 @ResponseBody, ReseponseEntity 사용해서 응답을 빠르고 쉽게 작성 가능 0-2. @ResponseBodyHTTP 요청의 body 에는 여러 데이터가 존재함이 body의 데이터를 직렬화 해주는 어노테이션직렬화 : 현재의 데이터를 네트워크에서 송/수신 가능하도록 변경하는 것 1. ResponseEntity스프링 프레임워크가 제공하는 클래스HttpEntity 클래스를 상속받음 (+ http 상태코드 포함)HttpEntity : headers와 body로 이루어짐⇒ 사용자의 Http Request에 대한 응답 데이터를 포함!..
1. 트랜잭션한 묶음으로 처리되어야 하는 작업 (SQL 명령문) 들의 집합커밋 (commit)“정상 종료”트랜잭션의 실행 결과를 DB에 최종 반영하는 것롤백 (rollback)트랜잭션의 실행 결과를 반영하지 않고 취소하여 원래 상태로 되돌리는 것⇒ 복수 사용자의 동시 접근성 제어, 장애 발생 시 안정적으로 데이터 복구하기 위해 필요!! 2. 트랜잭션의 ACID 특성Atomicity (원자성)트랜잭션 안의 작업을 모두 성공적으로 완료 or 모두 철회하여 무효화 해야 함 ⇒ 전부 혹은 전무 (All or Nothing) 실행 규칙 적용Consistency (일관성)DB가 트랜잭션 실행 전의 일관된 상태 → 트랜잭션 실행 후 또 다른 일관된 상태 로 전환되어야 함Isolation (고립성)여러 개의 트랜잭..
1. ChatGPT APIOpenAi에서 제공하는 언어 모델 API이 API를 활용하면 개발자가 애플리케이션에 대화형 AI 기능을 쉽게 통합할 수 있음RESTful APIHTTP 요청을 통해 쉽게 호출 가능JSON 형식으로 데이터를 주고 받음 2. api key 발급2-1. 회원가입 및 로그인https://platform.openai.com/docs/overview 접속우측 상단의 버튼으로 로그인(회원가입)진행 2-2. api key 발급우측 상단의 프로필 > Your profile 클릭 프로필 페이지에서 User API keys 클릭 Create new secret key 클릭 Name과 Permissions 를 생성 의도에 맞게 설정 후 Create secret key 클릭 상단에 API key ge..
지난 게시글2024.09.02 - [Spring Boot] - [Spring Boot] 스프링 이미지 업로드 예제 (0) - 예시 상황, 공통 코드2024.09.02 - [Spring Boot] - [Spring Boot] 스프링 이미지 업로드 예제 (1) - 프로젝트 내부 디렉토리에 업로드2024.09.02 - [Spring Boot] - [Spring Boot] 스프링 이미지 업로드 예제 (2) - DB에 이미지 직접 저장1. 설명예제(2) 에서 DB에 이미지를 직접 저장함실제 프로젝트 배포 시 트래픽이 많아져서 업로드 되는 이미지가 많다면 DB에 무리가 갈 수 있음 ⇒ 성능 저하 초래 가능!서버 ↔ 클라이언트 간 이동해야 할 데이터 양이 많아짐 ⇒ 속도 느려질 수 있음!외부 경로에 이미지를 업로드 ..
2024.09.02 - [Spring Boot] - [Spring Boot] 스프링 이미지 업로드 예제 (0) - 예시 상황, 공통 코드 [Spring Boot] 스프링 이미지 업로드 예제 (0) - 예시 상황, 공통 코드1. 예제 프로젝트 설명 게시글을 작성하는 기본 CRUD 프로젝트 가정게시글 작성 시 이미지 업로드를 포함하여 구현하고 싶음 2. 공통 코드이미지 업로드 로직을 제외한 기본적인 게시글 작성, 조blogan99.tistory.com 1. 설명(로컬 환경) 이전 방법( https://blogan99.tistory.com/138?category=1148702 )으로 이미지 저장 시 문제점resources > static > image_upload에 이미지가 업로드 되더라도 인텔리제이에서 프로..
2024.09.02 - [Spring Boot] - [Spring Boot] 스프링 이미지 업로드 예제 (0) - 예시 상황, 공통 코드 [Spring Boot] 스프링 이미지 업로드 예제 (0) - 예시 상황, 공통 코드1. 예제 프로젝트 설명 게시글을 작성하는 기본 CRUD 프로젝트 가정게시글 작성 시 이미지 업로드를 포함하여 구현하고 싶음 2. 공통 코드이미지 업로드 로직을 제외한 기본적인 게시글 작성, 조blogan99.tistory.com 1. 설명프로젝트 내부 디렉토리 (resources > static > image_upload) 에 업로드 된 이미지 저장할 것이미지 이름 중복 방지를 위해 "UUID로 생성한 랜덤값 + 실제 이미지 이름" 으로 저장이미지 업로드 시 처리할 예외 (조건 추가)..
1. 예제 프로젝트 설명 게시글을 작성하는 기본 CRUD 프로젝트 가정게시글 작성 시 이미지 업로드를 포함하여 구현하고 싶음 2. 공통 코드이미지 업로드 로직을 제외한 기본적인 게시글 작성, 조회 로직만을 포함 * 구현한 이미지 업로드 프로젝트 *내부 디렉토리에 업로드 https://blogan99.tistory.com/138DB에 이미지 직접 저장 https://blogan99.tistory.com/139외부 경로에 업로드 https://blogan99.tistory.com/140AWS S3에 업로드 https://blogan99.tistory.com/151 2-1. 공통 의존 라이브러리build.gradledependencies { implementation 'org.springframework..