diff --git "a/5\354\243\274\354\260\250 Sever S-Day \352\263\274\354\240\234/S3Controller.java" "b/5\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/S3Controller_Dongseon.java"
similarity index 100%
rename from "5\354\243\274\354\260\250 Sever S-Day \352\263\274\354\240\234/S3Controller.java"
rename to "5\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/S3Controller_Dongseon.java"
diff --git "a/5\354\243\274\354\260\250 Sever S-Day \352\263\274\354\240\234/\354\226\221\353\217\231\354\204\240_5\354\243\274\354\260\250_\352\263\274\354\240\234.md" "b/5\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/\354\226\221\353\217\231\354\204\240_5\354\243\274\354\260\250_\352\263\274\354\240\234.md"
similarity index 100%
rename from "5\354\243\274\354\260\250 Sever S-Day \352\263\274\354\240\234/\354\226\221\353\217\231\354\204\240_5\354\243\274\354\260\250_\352\263\274\354\240\234.md"
rename to "5\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/\354\226\221\353\217\231\354\204\240_5\354\243\274\354\260\250_\352\263\274\354\240\234.md"
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234.md" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234.md"
new file mode 100644
index 0000000..333185a
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234.md"
@@ -0,0 +1,27 @@
+## 과정
+### 1. Entity를 완성하고 test 해보기
+
+
+- table이 생성된 것을 확인할 수 있다!
+
+
+
+### 2. 코드 작성 (Controller 만들기)
+- application.yml, RdsRepository.java, RdsService.java, BookForm.java, RdsController.java 파일 수정하기
+- localhost:8080으로 확인한 화면
+
+
+
+### 3. Controller를 API로 만들기
+- Controller를 RestController로 수정
+- 결과:
+
+- PostMan 사용 : get, post test
+
+
+
+## 보충 (난관-해결..!)
+### 쿼리란?
+ - query란 단어의 뜻은 문의하다, 질문하다라는 뜻이고, 이러한 문의는 요청, 즉 '데이터베이스에 정보를 요청하는 일'을 말한다. 정보를 처리하는 과정에서 query를 보내면 이에 따른 정보를 DB로부터 가져온다.
+ - 참고 : https://velog.io/@rgfdds98/SQL-query란-무엇일까
+
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/Book.java" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/Book.java"
new file mode 100644
index 0000000..ae8b3cc
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/Book.java"
@@ -0,0 +1,21 @@
+package ServerStudy6Cloud.ServerStudy6Cloud.Domain;
+
+import jakarta.persistence.*;
+import lombok.Getter;
+import lombok.Setter;
+
+@Entity
+@Setter
+@Getter
+@Table(name = "book_info")
+public class Book {
+ @Id
+ @GeneratedValue
+ @Column(name = "book_info")
+ private Long id;
+
+ private String name;//책 이름
+ private String reason;//해당 책을 좋아하는 이유
+ // Entity 완성
+ //를 입력받고 AWS rds에 저장하는 실습
+}
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/BookForm.java" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/BookForm.java"
new file mode 100644
index 0000000..3d7410a
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/BookForm.java"
@@ -0,0 +1,12 @@
+package ServerStudy6Cloud.ServerStudy6Cloud.Controller;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter @Setter
+public class BookForm { // 폼 객체
+ //책 이름, 책 좋아하는 이유
+ private String name;
+ private String reason;
+
+}
\ No newline at end of file
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsController.java" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsController.java"
new file mode 100644
index 0000000..0ca3344
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsController.java"
@@ -0,0 +1,35 @@
+package ServerStudy6Cloud.ServerStudy6Cloud.Controller;
+
+import ServerStudy6Cloud.ServerStudy6Cloud.Domain.Book;
+import ServerStudy6Cloud.ServerStudy6Cloud.Service.RdsService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequiredArgsConstructor
+public class RdsController {
+ private final RdsService rdsService;
+ //AWS RDS에서 Book list를 가져오는 GetMapping
+ @GetMapping("/")
+ public ResponseEntity> readDB(){
+ List bookList = rdsService.findBooks();
+ return new ResponseEntity<>(bookList, HttpStatus.OK);
+ }
+
+ //AWS RDS에 Book 객체를 저장하는 PostMapping
+ @PostMapping("/upload") // upload라는 경로로 가면 저장
+ public ResponseEntity> updateDB(BookForm form) {
+ Book book = new Book();
+ book.setName(form.getName());
+ book.setReason(form.getReason());
+ rdsService.saveBook(book); // book 객체 넣어주고
+ return new ResponseEntity<>(HttpStatus.CREATED);
+ }
+}
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsRepository.java" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsRepository.java"
new file mode 100644
index 0000000..4c7dceb
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsRepository.java"
@@ -0,0 +1,26 @@
+package ServerStudy6Cloud.ServerStudy6Cloud.Repository;
+
+import ServerStudy6Cloud.ServerStudy6Cloud.Domain.Book;
+import jakarta.persistence.EntityManager;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+@RequiredArgsConstructor // final이 붙은 필드에 자동으로 생성자 만들어주는 annotation
+public class RdsRepository {
+ private final EntityManager em; //EntityManager : 엔티티 객체와 데베 간 상호작용 관리, DB와 맵핑되려면 꼭 필요
+ //DB에 새로운 책 저장하는 메서드
+ public void save(Book book){ // 책 객체 저장 메소드
+ em.persist(book); // 영속상태 : 자동으로 JPA가 엔티티의 변경을 추적하고 관리할 수 있는 상태
+ }
+
+ //DB에서 모든 책 리스트 가져오는 메서드
+ public List findAll(){
+ // JPQL은 객체 지향적인 방식으로 데베 검색을 정의할 수 있는 쿼리 언어, 이를 생성하는 메소드
+ // JQL쿼리와 조회할 class : Book이라는 클래스에서 해당 쿼리를 진행
+ return em.createQuery("select b from Book b", Book.class)
+ .getResultList(); // 그 결과를 리스트로 반환
+ }
+}
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsService.java" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsService.java"
new file mode 100644
index 0000000..8961227
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/RdsService.java"
@@ -0,0 +1,28 @@
+package ServerStudy6Cloud.ServerStudy6Cloud.Service;
+
+import ServerStudy6Cloud.ServerStudy6Cloud.Domain.Book;
+import ServerStudy6Cloud.ServerStudy6Cloud.Repository.RdsRepository;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+@Service // 서비스 명시
+@Transactional // JPA의 중요한 로직은 이 안에서 실행
+@RequiredArgsConstructor // final이 있는 argument의 생성자를 자동 생성(롬복 제공)
+public class RdsService {
+ //RdsRepository를 사용해 DB에 저장하는 로직
+ private final RdsRepository rdsRepository; // final로 해야 repo가 변경되는 문제를 막을 수 있음
+
+ @Transactional(readOnly = true)
+ public List findBooks(){
+ return rdsRepository.findAll();
+ }
+
+ public Long saveBook(Book book){
+ rdsRepository.save(book);
+ return book.getId(); // 값이 저장되었는지 확인하는 용도
+ }
+
+}
diff --git "a/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/application.yml" "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/application.yml"
new file mode 100644
index 0000000..77c8cf7
--- /dev/null
+++ "b/6\354\243\274\354\260\250 Server S-Day \352\263\274\354\240\234/application.yml"
@@ -0,0 +1,13 @@
+# RDS
+spring:
+ datasource:
+ url: jdbc:mysql://gdsc-rds.cn2mak2qq5zj.us-east-1.rds.amazonaws.com:3306/study6
+ username: admin
+ password: gdsccloud
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ # hibernate
+ jpa:
+ show-sql: true
+ hibernate:
+ ddl-auto: update #rds에 없는 부분은 업데이트 되고, 아닌 부분은 그냥 남게 된다.
+ dialect: org.hibernate.dialect.MySQL8Dialect
\ No newline at end of file