From 2404cee7621e9c9e90cb489b7184bc7359f1b1e6 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 2 Nov 2023 07:17:57 +0900
Subject: [PATCH 01/11] =?UTF-8?q?[add]=205=EC=A3=BC=EC=B0=A8=20=EC=A3=BC?=
=?UTF-8?q?=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=A0=9C=EC=B6=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit5/unit5.md | 97 ++++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 83 insertions(+), 14 deletions(-)
diff --git a/Unit5/unit5.md b/Unit5/unit5.md
index 9533b55..6c41842 100644
--- a/Unit5/unit5.md
+++ b/Unit5/unit5.md
@@ -3,43 +3,112 @@
## ❗️ 강의 수강 여부
수강한 강의에 체크표시 해주세요~
-- [ ] 데이터베이스 실습
-- [ ] 데이터베이스 실습 2
-- [ ] SQL
+- [x] 데이터베이스 실습
+- [x] 데이터베이스 실습 2
+- [x] SQL
## ❗️ notion에 키워드 정리 완료 여부
내가 notion에 키워드를 정리를 완료한 경우 체크표시 해주세요~
-- [ ] 키워드 정리 완료
+- [x] 키워드 정리 완료
## ❗️ 5주차 과제
1. ERD export해서 구축된 RDS에 반영하기
(완료된 내용 켬쳐본 올리기)
+ ![스크린샷 2023-11-02 06 21 20](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0391857d-fc16-40b1-b1f9-1bae2e6d177b)
+
+ 어려움을 겪은 부분 1: CREATE database db_test;를 하려했으나 내가 로그인한 jooyj0529에는 그런 권한이 없다는 에러를 마주했다.
+
+ 해결 과정 :
+ 1. root의 모든 권한을 jooyj0529에게 주겠다고 query를 했으나 여전히 jooyj0529에게 database를 만들 권한이 없다고 뜸.
+ -> 그렇다면 root에서 database를 생성하고, 그 database에 대한 모든 권한을 jooyj0529에게 설정해 주면 어떨까?
+
+ 2. root 사용자로 mysql 로그인하여 database db_test 생성 & 제대로 생성되었는지 확인
+ ![스크린샷 2023-11-02 06 32 29](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/6f4cd2dc-7e00-42c1-b730-5e3dd272de70)
+
+ 3. root 사용자에서 GRANT 이용해서 joyj0529에게 db_test에 대한 모든 권한을 부여하고, FLUSH 이용해 변경사항 저장 & 제대로 저장되었는지 확인
+ ![스크린샷 2023-11-02 06 34 56](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/eeb42d28-c48b-418d-9dbc-71f7f347ac67)
+
+ 4. 해결완료! 이제 jooyj0529로 로그인하여 db_test에 table을 생성하고 삭제할 수 있다.
+
+
+ 참고 블로그
+ - https://velog.io/@leesomyoung/Datagrip을-사용하여-외부에서-MySQL에-접속하기
+
+
+ 어려움을 겪은 부분 2: userId에 AUTO_INCREMENT 설정을 해 주었더니 ( 한 유저 생성될 때마다 자동으로 id 1씩 올라가면 좋기 때문 ), Table이 CREATE 되지 않았다. 에러메시지에 AUTO_INCREMENT 되는 것은 Primary key여야 하고, auto column은 한개여야 한다고 되어있었는데 둘 다 만족을 하는데도 생성이 되지 않았다.
+
+ 해결 방법 :
+ ![스크린샷 2023-11-02 06 44 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0ec863a2-530a-4891-b6ad-1cd117e8bf71)
+ ![스크린샷 2023-11-02 06 46 16](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/1fdf1a1b-71c1-46f2-8fd3-690f0efdeb56)
+
+ Export한 Query를 살펴보니, 위와같이 Table을 CREATE 한 뒤 밑에서 Primary key를 설정해주고 있었다.
+ -> CREATE 할 때 AUTO_INCREMENT 되는 것이 primary key가 아니라서 문제가 발생하므로, CREATE 내부에서 userId를 primary key로 지정해주자.
+
+ ![스크린샷 2023-11-02 06 48 42](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0b1ed476-2e30-447c-ae12-a7b74b31c5d8)
+
+ 위와같이 primary key(userId)를 추가하여 해결하였다.
+
+
2. 데이터그립을 통해서 RDS에 접근하기
- (완료된 내용 켬쳐본 올리기)
+ ![스크린샷 2023-11-02 03 48 51](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/47210491-4553-4830-9d11-cda350f54f35)
-
+ 어려움을 겪은 부분 : Host를 RDS의 endpoint로 설정하고, 보안그룹 인바인드 규칙도 추가하고, User와 password도 문제가 없었는데 계속 Communication failure이 일어났다 ( 혹시 몰라 password도 바꿔보았는데 효과 X ).
+
+ 해결 방법 : Driver를 mysql에서 Amazon aurora mysql로 변경하였더니 해결할 수 있었다. ( mysql -> mysql 5.1 버젼으로 바꾸어도 해결된다 )
+
+ 참고 블로그
+ - https://bba-jin.tistory.com/55
+ - https://7942yongdae.tistory.com/187
-3. 접근된 RDS에 쿼리 작성하기
- (완료된 내용 켬쳐본 올리기)
-4. RDS에 더미데이터 반영하기
- (완료된 내용 켬쳐본 올리기)
-
+3. 접근된 RDS에 쿼리 작성하기 & 4. RDS에 더미데이터 반영하기 & 화면 최소 3개 이상 쿼리 작성하기
+
+ 1. USER에 3명 추가하고 여러 방법으로 확인하기
+
+ ![스크린샷 2023-11-02 05 34 13](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/1abddffb-641d-44bf-9251-c8ffa4b1e222)
+
+ ![스크린샷 2023-11-02 05 34 25](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/b403b01b-6ea8-4b37-bb16-0ea7c1b5a9c1)
+
+ ![스크린샷 2023-11-02 05 34 40](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/73b4c01f-4454-4bb4-99d2-8bd9bcf975ca)
+
+
+ 2. FOLLWER에 follower, userId( 팔로워가 팔로우 하는 사람 ) 조합 3개 추가 뒤 확인
+
+ ![스크린샷 2023-11-02 07 01 56](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/a36648a2-294d-43f8-8e31-caf929204fe2)
+
+ 3. UserId = 1을 팔로우하는 사람들의 이름은 뭘까? 를 확인해보자
+ - USER table과 FOLLWER table을 JOIN 해보기
+ ![스크린샷 2023-11-02 06 08 53](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0ebe8f04-1038-425c-a8ea-cabe621fb4a8)
+
+ from USER as U라고 쓴 것은 줄임말을 생성한 것이다. USER의 userId 값을 지칭하고 싶으면 U.userId로 표현 가능하다. JOIN 해보니 userId = 1을 팔로우하는 사람들의 이름을 알기 위해선 F.userId = 1 이고 F.userId = U.userId로 조건을 걸어줘야겠다는 생각이 들었다.
+
+ - 이름을 가져오겠다고 선언하고, WHERE 사용해 조건 걸기
+ ![스크린샷 2023-11-02 06 09 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/dcff10f9-1a38-41f6-945f-d9aff27d34c8)
+
+ select U.name으로 이름이 궁금하다고 선언하고, WHERE을 사용해 조건을 걸었더니 userId = 1 ( yeonjin ) 을 팔로우하는 사람들이 누구인지 확인할 수 있었다. ( inner join이라 WHERE이나 ON을 둘 중 아무거나 사용해도 상관 없었다 )
+
+
+ WHERE : join 후에 조건 필터링
+ ON : join 전에 조건 필터링
+
+ inner join을 사용할 때는 똑같이 작동하지만, outer join을 할 경우 ON으로 해야 원하는 결과를 얻을 수 있다.
+
+ 관련 블로그
+ - https://velog.io/@crosstar1228/SQL-join할때-on-과-where의-차이
+ - https://codingdog.tistory.com/entry/mysql-on절-vs-where절-언제-어떻게-필터링-되는가 // 자세히 설명되어 있다.
+
-
-5. 화면 최소 3개 이상 쿼리 작성하기
- (완료된 내용 켬쳐본 올리기)
From edcd342d3597c4ea2d816a954edc03b2c6c9e99c Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 2 Nov 2023 07:20:36 +0900
Subject: [PATCH 02/11] =?UTF-8?q?[fix]=205=EC=A3=BC=EC=B0=A8=20=EC=A3=BC?=
=?UTF-8?q?=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=9D=BC=EB=B6=80=20?=
=?UTF-8?q?=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit5/unit5.md | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/Unit5/unit5.md b/Unit5/unit5.md
index 6c41842..496fb70 100644
--- a/Unit5/unit5.md
+++ b/Unit5/unit5.md
@@ -28,9 +28,11 @@
-> 그렇다면 root에서 database를 생성하고, 그 database에 대한 모든 권한을 jooyj0529에게 설정해 주면 어떨까?
2. root 사용자로 mysql 로그인하여 database db_test 생성 & 제대로 생성되었는지 확인
+
![스크린샷 2023-11-02 06 32 29](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/6f4cd2dc-7e00-42c1-b730-5e3dd272de70)
3. root 사용자에서 GRANT 이용해서 joyj0529에게 db_test에 대한 모든 권한을 부여하고, FLUSH 이용해 변경사항 저장 & 제대로 저장되었는지 확인
+
![스크린샷 2023-11-02 06 34 56](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/eeb42d28-c48b-418d-9dbc-71f7f347ac67)
4. 해결완료! 이제 jooyj0529로 로그인하여 db_test에 table을 생성하고 삭제할 수 있다.
@@ -44,8 +46,10 @@
해결 방법 :
![스크린샷 2023-11-02 06 44 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0ec863a2-530a-4891-b6ad-1cd117e8bf71)
+
![스크린샷 2023-11-02 06 46 16](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/1fdf1a1b-71c1-46f2-8fd3-690f0efdeb56)
+
Export한 Query를 살펴보니, 위와같이 Table을 CREATE 한 뒤 밑에서 Primary key를 설정해주고 있었다.
-> CREATE 할 때 AUTO_INCREMENT 되는 것이 primary key가 아니라서 문제가 발생하므로, CREATE 내부에서 userId를 primary key로 지정해주자.
@@ -58,6 +62,7 @@
2. 데이터그립을 통해서 RDS에 접근하기
+
![스크린샷 2023-11-02 03 48 51](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/47210491-4553-4830-9d11-cda350f54f35)
어려움을 겪은 부분 : Host를 RDS의 endpoint로 설정하고, 보안그룹 인바인드 규칙도 추가하고, User와 password도 문제가 없었는데 계속 Communication failure이 일어났다 ( 혹시 몰라 password도 바꿔보았는데 효과 X ).
@@ -88,11 +93,13 @@
3. UserId = 1을 팔로우하는 사람들의 이름은 뭘까? 를 확인해보자
- USER table과 FOLLWER table을 JOIN 해보기
+
![스크린샷 2023-11-02 06 08 53](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0ebe8f04-1038-425c-a8ea-cabe621fb4a8)
from USER as U라고 쓴 것은 줄임말을 생성한 것이다. USER의 userId 값을 지칭하고 싶으면 U.userId로 표현 가능하다. JOIN 해보니 userId = 1을 팔로우하는 사람들의 이름을 알기 위해선 F.userId = 1 이고 F.userId = U.userId로 조건을 걸어줘야겠다는 생각이 들었다.
- 이름을 가져오겠다고 선언하고, WHERE 사용해 조건 걸기
+
![스크린샷 2023-11-02 06 09 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/dcff10f9-1a38-41f6-945f-d9aff27d34c8)
select U.name으로 이름이 궁금하다고 선언하고, WHERE을 사용해 조건을 걸었더니 userId = 1 ( yeonjin ) 을 팔로우하는 사람들이 누구인지 확인할 수 있었다. ( inner join이라 WHERE이나 ON을 둘 중 아무거나 사용해도 상관 없었다 )
From c73c1ff812cd2a26edc910f5e091e62d8b1b531e Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 2 Nov 2023 07:21:43 +0900
Subject: [PATCH 03/11] =?UTF-8?q?[fix]=205=EC=A3=BC=EC=B0=A8=20=EC=A3=BC?=
=?UTF-8?q?=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=9D=BC=EB=B6=80=20?=
=?UTF-8?q?=EC=88=98=EC=A0=952?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit5/unit5.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/Unit5/unit5.md b/Unit5/unit5.md
index 496fb70..1f72739 100644
--- a/Unit5/unit5.md
+++ b/Unit5/unit5.md
@@ -45,6 +45,7 @@
어려움을 겪은 부분 2: userId에 AUTO_INCREMENT 설정을 해 주었더니 ( 한 유저 생성될 때마다 자동으로 id 1씩 올라가면 좋기 때문 ), Table이 CREATE 되지 않았다. 에러메시지에 AUTO_INCREMENT 되는 것은 Primary key여야 하고, auto column은 한개여야 한다고 되어있었는데 둘 다 만족을 하는데도 생성이 되지 않았다.
해결 방법 :
+
![스크린샷 2023-11-02 06 44 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0ec863a2-530a-4891-b6ad-1cd117e8bf71)
![스크린샷 2023-11-02 06 46 16](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/1fdf1a1b-71c1-46f2-8fd3-690f0efdeb56)
From 08222310e7a986bc5d82992441ccdef3b4d30cf6 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 2 Nov 2023 07:22:37 +0900
Subject: [PATCH 04/11] [fix
---
Unit5/unit5.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Unit5/unit5.md b/Unit5/unit5.md
index 1f72739..c47d610 100644
--- a/Unit5/unit5.md
+++ b/Unit5/unit5.md
@@ -88,7 +88,7 @@
![스크린샷 2023-11-02 05 34 40](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/73b4c01f-4454-4bb4-99d2-8bd9bcf975ca)
- 2. FOLLWER에 follower, userId( 팔로워가 팔로우 하는 사람 ) 조합 3개 추가 뒤 확인
+ 2. FOLLWER에 follower, userId( 팔로워가 팔로우 하는 사람 ) 조합 2개 추가 뒤 확인
![스크린샷 2023-11-02 07 01 56](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/a36648a2-294d-43f8-8e31-caf929204fe2)
From 00426e5b8f1103b29a1596cbf0fc8d06309e836e Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 9 Nov 2023 05:36:12 +0900
Subject: [PATCH 05/11] Create Unit6
---
Unit6 | 1 +
1 file changed, 1 insertion(+)
create mode 100644 Unit6
diff --git a/Unit6 b/Unit6
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/Unit6
@@ -0,0 +1 @@
+
From 9974bfe9db4af3c16a485d6c3e84694a76de21ce Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 9 Nov 2023 05:38:38 +0900
Subject: [PATCH 06/11] Update Unit6
---
Unit6 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Unit6 b/Unit6
index 8b13789..9daeafb 100644
--- a/Unit6
+++ b/Unit6
@@ -1 +1 @@
-
+test
From e41d0609e8e280a310fbeba70fbd71b99158e31f Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 9 Nov 2023 05:39:47 +0900
Subject: [PATCH 07/11] Delete Unit6
---
Unit6 | 1 -
1 file changed, 1 deletion(-)
delete mode 100644 Unit6
diff --git a/Unit6 b/Unit6
deleted file mode 100644
index 9daeafb..0000000
--- a/Unit6
+++ /dev/null
@@ -1 +0,0 @@
-test
From 1c7806a95f504cc2b3ca6a522a66b8786872e901 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 9 Nov 2023 06:10:26 +0900
Subject: [PATCH 08/11] =?UTF-8?q?[add]=206=EC=A3=BC=EC=B0=A8=20=EC=A3=BC?=
=?UTF-8?q?=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=A0=9C=EC=B6=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit6/unit6.md | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
create mode 100644 Unit6/unit6.md
diff --git a/Unit6/unit6.md b/Unit6/unit6.md
new file mode 100644
index 0000000..c011345
--- /dev/null
+++ b/Unit6/unit6.md
@@ -0,0 +1,53 @@
+### ⭐️ 6주차 과제 제출 ⭐️
+
+## ❗️ 강의 수강 여부
+수강한 강의에 체크표시 해주세요~
+
+- [x] HTTP 통신
+- [x] API
+- [x] 데이터 포맷 - CSV, JSON, XML
+
+
+
+## ❗️ 6주차 과제
+1. 개발환경 구축하기 - nodejs 설치 및 사전에 올려둔 템플릿 적용하기
+
+ ![스크린샷 2023-11-09 04 42 23](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/982000c0-6401-435c-820c-b772050be544)
+
+ 갑작스럽게 ssh 접속이 connection time out이 일어났으나, vs-code에서 Remote-SSH: Kill VS Code Server on Host를 통해 갑작스럽게 해결되었다.
+ 참고한 사이트 :
+ https://5bluewhale.tistory.com/25
+
+
+3. 자신이 설계한 DB와 연동해서 API설계 (CRUD)
+
+ ![스크린샷 2023-11-09 05 29 31](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/7578e97c-9856-42db-9c54-47b91d374cc0)
+
+ 고민되는 점 :
+ 1. API 설계 할 때, user 2의 팔로워에 변동을 주고 싶으면 /user/2/follower 이렇게 작성해야 할지, /follower 로 작성하고 query로 userId = 2를 주는게 맞는지 헷갈린다.
+ 2. 항상 /user/{userId}로 접근해야 하나? 아니면 /{userId} 이렇게 바로 접근 가능할까?
+ - 네이버웹툰, 인스타그램 api들을 확인해봤는데도 아직 감이 잘 안잡힌다.
+ - 인스타그램에서는 /유저이름/following 이런 식으로 following과 follower를 확인한다. 그에 반면, 네이버 블로그는 /AdminMain.naver로 설정하고 blogId = 유저이름 & Redirect = BuddyMe 이런식으로 설정해놓았다.
+ - 사이트마다 api 설계방식이 달라 아직 감이 잘 안잡힌다. 추가 공부가 필요할 것 같다.
+
+
+
+3. Postman으로 API 테스트
+4.
+ ![스크린샷 2023-11-09 04 29 48](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/741c5285-cbbb-44d4-953e-10a80f0d771f)
+
+ ![스크린샷 2023-11-09 03 57 27](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/50ede8e8-0fa1-400c-9728-98cfa1e24ccd)
+
+
+
+
+4. API Sheet 작성
+ (완료된 내용 켬쳐본 올리기)
+
+ ![스크린샷 2023-11-09 04 41 41](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/543eb813-8551-48be-a8bd-478c161dad4c)
+
+
+
+
+
+
From f1010ef7cc787831dc29e6ce15b871f7362bbde8 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 23 Nov 2023 04:33:59 +0900
Subject: [PATCH 09/11] =?UTF-8?q?[add]=207=20&=208=EC=A3=BC=EC=B0=A8=20?=
=?UTF-8?q?=EC=A3=BC=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=A0=9C?=
=?UTF-8?q?=EC=B6=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit7/unit7.md | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 74 insertions(+)
create mode 100644 Unit7/unit7.md
diff --git a/Unit7/unit7.md b/Unit7/unit7.md
new file mode 100644
index 0000000..4f880b6
--- /dev/null
+++ b/Unit7/unit7.md
@@ -0,0 +1,74 @@
+### ⭐️ 7주차 과제 제출 ⭐️
+
+## ❗️ 강의 수강 여부
+수강한 강의에 체크표시 해주세요~
+
+- [x] Restful API
+- [x] Path Variable, Query Parameter
+
+
+
+## ❗️ notion에 키워드 정리 완료 여부
+내가 notion에 키워드를 정리를 완료한 경우 체크표시 해주세요~
+
+- [x] 키워드 정리 완료
+
+
+
+## ❗️ 7주차 과제
+1. GET 메소드 함수 작성 완료하기
+
+ index.js : 호출 시 가장 먼저 실행됨
+ userRoute.js : API 지정해두는 곳 / index.js -> userRoute.js
+ userController.js : userRoute.js -> userController.js / 받은 값 형식 맞는지 등의 에러 체크 / Return = SUCCESS or ERROR
+ userService.js : Create, Update, Delete 비즈니스 로직 처리 / DB connection 후 userDao에 connection 전달 / Return = SUCCESS or ERROR
+ userProvider.js : 데이터베이스 다루는 애한테 이런거 너가해줘! 요청하기. GET 다룸 / DB connection 후 userDao에 connection 전달 / Return = DB 값
+ userDao.js : 데이터베이스 직접 만지는 애 / Query 통해 DB 값 직접 변경 / Return = DB 값
+
+ baseResponseStatus.js : isSuccess인지, code는 무엇인지, 같이 전달할 message는 무엇인지 지정하는 곳
+ ex ) SIGNUP_DESCRIPTION_LENGTH : {"isSuccess": false, "code": 2019, "message":"소개는 최대 45자리를 입력해주세요."}
+
+ ![스크린샷 2023-11-23 04 17 14](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/253b080c-2fc4-40a2-9126-1562e751c52f)
+
+
+
+
+2. GET 메소드 test 진행하기(postman 이용하기)
+
+ ![스크린샷 2023-11-23 01 58 57](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/0a8957fb-17e1-4fd2-93ef-8b15bf21636a)
+
+ ![스크린샷 2023-11-23 01 59 48](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/1fabeb7e-898b-45e5-88f2-d14a7e189dff)
+
+
+
+
+3. SIGN UP POST 메소드 함수 작성 완료하기
+
+ userController.js의 postUsers 함수에 name, password, description이 제대로 형식에 맞는지 체크하였다.
+
+ ![스크린샷 2023-11-23 04 20 10](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/10018439-b830-44c7-860d-28745c90332b)
+
+
+4. SIGN UP POST 메소드 test 진행하기(postman 이용하기)
+
+ ![스크린샷 2023-11-23 03 22 33](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/6a306a96-5aaf-4c2f-aee9-2d73f7e0dc3a)
+
+ Post 실행 후, Datagrip을 통해 데이터가 제대로 add 되었는지, password가 hash처리가 잘 되었는지 확인하였다.
+
+ ![스크린샷 2023-11-23 03 22 46](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/513be6fe-e099-49ae-afdd-28f81166da1f)
+
+5. Amazon ec2 ssh 연결 timeout 뜨는 이유
+ - 다은 선배님이 알려주셔서 해결했던..!!! 기억해놓고 싶어서 적어놓게 되었습니당.
+
+ - 이유 : Cpu 사용률이 Max를 찍으면서 강제로 연결을 끊어버린 것. 재부팅 하면 잠깐 동안은 해결되지만, 곧 다시 끊김.
+ t2.micro는 RAM이 1GB으로 적음
+
+ - 해결 방법 : SWAP 메모리를 지정한다. SWAP 메모리란 RAM이 부족할 경우가 있으므로 HDD의 일정공간을 마치 RAM처럼 사용하는 것이다. 이를 통해 반 강제적으로 RAM을 증설한 듯한 효과를 얻을 수 있다.
+
+ - 참고 블로그
+ 1. https://sundries-in-myidea.tistory.com/102
+ 2. https://repost.aws/ko/knowledge-center/ec2-memory-swap-file
+
+
+
+
From 5694ed776d8ed625ff9360e91477728cd59a4071 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 23 Nov 2023 04:35:40 +0900
Subject: [PATCH 10/11] =?UTF-8?q?[fix]=207=20&=208=EC=A3=BC=EC=B0=A8=20?=
=?UTF-8?q?=EC=A3=BC=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=9D=BC?=
=?UTF-8?q?=EB=B6=80=20=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit7/unit7.md | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/Unit7/unit7.md b/Unit7/unit7.md
index 4f880b6..d324e44 100644
--- a/Unit7/unit7.md
+++ b/Unit7/unit7.md
@@ -18,14 +18,14 @@
## ❗️ 7주차 과제
1. GET 메소드 함수 작성 완료하기
- index.js : 호출 시 가장 먼저 실행됨
- userRoute.js : API 지정해두는 곳 / index.js -> userRoute.js
- userController.js : userRoute.js -> userController.js / 받은 값 형식 맞는지 등의 에러 체크 / Return = SUCCESS or ERROR
- userService.js : Create, Update, Delete 비즈니스 로직 처리 / DB connection 후 userDao에 connection 전달 / Return = SUCCESS or ERROR
- userProvider.js : 데이터베이스 다루는 애한테 이런거 너가해줘! 요청하기. GET 다룸 / DB connection 후 userDao에 connection 전달 / Return = DB 값
- userDao.js : 데이터베이스 직접 만지는 애 / Query 통해 DB 값 직접 변경 / Return = DB 값
-
- baseResponseStatus.js : isSuccess인지, code는 무엇인지, 같이 전달할 message는 무엇인지 지정하는 곳
+ - index.js : 호출 시 가장 먼저 실행됨
+ - userRoute.js : API 지정해두는 곳 / index.js -> userRoute.js
+ - userController.js : userRoute.js -> userController.js / 받은 값 형식 맞는지 등의 에러 체크 / Return = SUCCESS or ERROR
+ - userService.js : Create, Update, Delete 비즈니스 로직 처리 / DB connection 후 userDao에 connection 전달 / Return = SUCCESS or ERROR
+ - userProvider.js : 데이터베이스 다루는 애한테 이런거 너가해줘! 요청하기. GET 다룸 / DB connection 후 userDao에 connection 전달 / Return = DB 값
+ - userDao.js : 데이터베이스 직접 만지는 애 / Query 통해 DB 값 직접 변경 / Return = DB 값
+
+ - baseResponseStatus.js : isSuccess인지, code는 무엇인지, 같이 전달할 message는 무엇인지 지정하는 곳
ex ) SIGNUP_DESCRIPTION_LENGTH : {"isSuccess": false, "code": 2019, "message":"소개는 최대 45자리를 입력해주세요."}
![스크린샷 2023-11-23 04 17 14](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/253b080c-2fc4-40a2-9126-1562e751c52f)
From 20aefa9caccc921bcdb650e3bf8ee7bc36f0f4f2 Mon Sep 17 00:00:00 2001
From: yeonjinJoo <102257328+yeonjinJoo@users.noreply.github.com>
Date: Thu, 23 Nov 2023 04:36:35 +0900
Subject: [PATCH 11/11] =?UTF-8?q?[fix]=207=20&=208=EC=A3=BC=EC=B0=A8=20?=
=?UTF-8?q?=EC=A3=BC=EC=97=B0=EC=A7=84=20=EA=B3=BC=EC=A0=9C=20=EC=9D=BC?=
=?UTF-8?q?=EB=B6=80=20=EC=88=98=EC=A0=952?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Unit7/unit7.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Unit7/unit7.md b/Unit7/unit7.md
index d324e44..1ac94bb 100644
--- a/Unit7/unit7.md
+++ b/Unit7/unit7.md
@@ -26,7 +26,7 @@
- userDao.js : 데이터베이스 직접 만지는 애 / Query 통해 DB 값 직접 변경 / Return = DB 값
- baseResponseStatus.js : isSuccess인지, code는 무엇인지, 같이 전달할 message는 무엇인지 지정하는 곳
- ex ) SIGNUP_DESCRIPTION_LENGTH : {"isSuccess": false, "code": 2019, "message":"소개는 최대 45자리를 입력해주세요."}
+ - ex ) SIGNUP_DESCRIPTION_LENGTH : {"isSuccess": false, "code": 2019, "message":"소개는 최대 45자리를 입력해주세요."}
![스크린샷 2023-11-23 04 17 14](https://github.com/yeonjinJoo/2023-Server-Study/assets/102257328/253b080c-2fc4-40a2-9126-1562e751c52f)