- node js
- datagrip
- mysql
- DATABASE
- Rp2๊ธฐ
- RP 2๊ธฐ
- ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
- SQL
- GIT
- aligoapi
- C++
- MAKE US
- ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
- merge sort
- java error
- docker
- OpenAPI
- Java
- MethodArgumentNotValidException
- @CreatedDate
- Data Structure
- Spring
- ์์คํ ์ํํธ์จ์ด
- spring์ผ๋ก https ์ ์ฉ
- spring ์์ ๋ก๊ทธ์ธ
- ํจ์คํธ์บ ํผ์คX์ผ๋์
- Unity
- SSL
- Quick Sort
- spring ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
๋ชฉ๋ก์ ์ฒด ๊ธ (129)
YS's develop story
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bVJOGW/btqUmI0oyJL/V7dA6KPbk8MevgJWX6Var1/img.png)
MySQL ) INSERT INTO๋ฌธ ํ์ฉํ๊ธฐ CafeReview๋ผ๋ ์๋์ ๊ฐ์ ํ ์ด๋ธ์ด ์์ต๋๋ค. reviewId๋ Auto inc๋ก ์ค์ ๋์ด ์์ต๋๋ค. ์ด์ INSERT INTO๋ฅผ ํ์ฉํ์ฌ ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํด ๋ด ์๋ค. reviewId์ ๊ฐ์ ์๋์ผ๋ก ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๋ฃ์ง ์์๊ณ , NOT NULL๊ฐ ๋ค์ ์ ๋ถ ๊ฐ์ ์ ๋ ฅํด ์ค๋๋ค. INSERT INTO CafeReview(content,cafeStar,userId,cafeId) VALUES ('this is test test!!',4,1,1); ์ฟผ๋ฆฌ๋ฅผ ์คํํด ์ค์๋ค.. ํ ์ด๋ธ์ ํ์ธํด๋ณด๋ฉด ๋ฐ์ดํฐ๊ฐ ์ถ๊ฐ๋์์ต๋๋ค!!
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cRSc3b/btqTLxc1lo1/W7qTrFuRZRS0kpYKODDaFk/img.png)
์ ๋ํฐ์์ ํ๋ธ๋ฅผ ํ๋ ์์ฑํ๊ณ ํ๋ธ๋ฅผ ์ ํํ์ฌ์ q, w, e, r ๋ฒํผ์ ํตํด Object๋ฅผ ์๋์ฒ๋ผ ์์ ์์ฌ๋ก ์กฐ์ ํ ์ ์์ต๋๋ค. ์ ๋ง ์ ์ฉํ ๊ธฐ๋ฅ Scene์ Game์ ์์ ์ ์ผ์น์ํค๊ณ ์ ํ๋ค๋ฉด ์นด๋ฉ๋ผ๋ฅผ ์ ํ ํ Ctrl + Shitf + F ๋จ์ถํค๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ohXiI/btqTIp8bDIw/lpp3oN4jQEHiOuSSYevNE0/img.png)
Unity์์ง์ ์คํํ ํ ๊ธฐ๋ณธ์ ์ธ ๋ ์ด์์์ ์์๊ฒ ์ค์ ํด ๋ด ์๋ค! ์๋์ ๊ฐ์ด ํด๋ฆญ์ ํด ์ค์๋ค! Game์ด๋ผ๊ณ ์ ํ ๋ถ๋ถ์ ๋ง์ฐ์ค๋ก ๊พน ๋๋ฌ์ ์๋๋ก ๋๋๊ทธํด์ค์๋ค!! ๊ทธ๋ ๊ฒ ํ๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ฉ๋๋ค. hierarchy์์ Create Empty๋ฅผ ํ๋ ์์ฑํ๊ณ .. Assets์์ C# Script๋ฅผ ํ๋ ์์ฑํ ํ C# ์คํฌ๋ฆฝํธ์ ์๋์ ๊ฐ์ด ์ ๋ ฅํ ํ... ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ GameObject์ ๋ฃ์ด ๋ด ์๋ค. ์๋์ ๊ฐ์ด ์๋ฌ๊ฐ ๋ฌ๋ค๋ฉด.. C# ์คํฌ๋ฆฝํธ๋ฅผ ํ์ธํด ์ฃผ์ด์ ๋ค๋ชจ ์น ๋ฐ์ค์ ์ด๋ฆ์ด ๊ฐ์์ผ ํฉ๋๋ค. ์ด์ ์์ ๋ฒํผ์ ํด๋ฆญํ๊ณ Ctrl + Shitf + C๋ฅผ ๋๋ฅด๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ ๋ณผ ์ ์์ต๋๋ค. ์ด ์ฝ์ ์ฐฝ๋ ๋์ด์ ์ ํ๋ฉด์ ์์๊ฒ ๋ถ์ฌ ์ค์๋ค. Unity ์์ง์ layo..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/omswR/btqTJSA1vMV/YcHstNxptCk6gecv2kdV80/img.png)
์ง๋๋ฒ ๊ณผ์ ์์ AWS์์ ์๋ฒ๋ฅผ ๊ตฌ์ถํ๊ณ mysql์ ์ค์น ํ ๋ค Datagrip์ ์ธ๋ถ ์ฐ๊ฒฐ์ ํด ์ฃผ์๋๋ฐ์.... ์ด๋ฒ์๋ ์ง์ ์ ํ๋ฆฌ์ผ์ด์ ์ ERD๋ฅผ ์ค๊ณํ๊ณ DataGrip์ ์ด์ฉํ์ฌ DB ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ ๊ณผ์ ์ ๋๋ค. ์น ๊ธฐ๋ฐ์ผ๋ก ERD ๋ชจ๋ธ์ ๊ทธ๋ ค๋ณผ ์ ์๋ AQueryTool๋ฅผ ์ฌ์ฉํด Database ERD ๋ชจ๋ธ์ ๊ทธ๋ ค ๋ณผ ๊ฒ์ ๋๋ค. https://aquerytool.com/ AQueryTool - AQuery.Web {{source.erd_info.erd_name + '(' + source.erd_info.db_type + ')'}} aquerytool.com ERD๋? ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ด ๋ฐ์ดํฐ์ ๊ตฌ์กฐ ๋ฐ ๊ทธ์ ์๋ฐํ ์ ์ฝ ์กฐ๊ฑด๋ค์ ๋ค์ํ ๊ธฐ๋ฒ์..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bysBu7/btqTDc2bHNF/9KMrXiZfrjlyNkmgbpOEi1/img.png)
์ฌ์ฉํ mysql ์ฟผ๋ฆฌ๋ฅผ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ์ต๋๋ค. create database * : * ์ด๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํฉ๋๋ค. ๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ schemas์ ๋ณด๋ฉด rphomework๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ฑ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. drop database * : * ์ด๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ญ์ ํฉ๋๋ค ๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ schemas์ ๋ณด๋ฉด ์๋ ์์๋ STUDY๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ญ์ ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ํ ์ด๋ธ ์์ฑ/์ญ์ ๊ด๋ จ ๋ช ๋ น์ด๋ ๊ฐ์ต๋๋ค.. create table * : * ์ด๋ผ๋ ํ ์ด๋ธ์ ์์ฑํฉ๋๋ค. drop table * : * ์ด๋ผ๋ ํ ์ด๋ธ์ ์ ๊ฑฐํฉ๋๋ค.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bMrqvw/btqTENgMsdH/ekemPiUTNbdC7UWXK9pkP1/img.jpg)
์ค๋์ ๋ชฉํ!! ์นด์นด์คํก ์ฑํ ๋ชฉ๋ก ํ๋ฉด์ ERD์ค๊ณ๋ฅผ ํด๋ณด๊ณ , ์ด๋ฅผ ๋ณด์ฌ์ฃผ๋ MySQL ์ฟผ๋ฆฌ๋ฌธ์ ์์ฑํด ๋ด ์๋ค! DataGrip์ ์คํ ํ kakaoDB๋ผ๋ ๋ฐ์ดํฐ ๋ฒ ์ด์ค๋ฅผ ์์ฑํด ์ค์๋ค schemas์ ์์ฑ๋ kakaoDB์ ํ ํ Jump to Query Console ์ ํ ์น ๊ธฐ๋ฐ ERD์ค๊ณ ์ฌ์ดํธ AQueryTool์์ ์๋์ ๊ฐ์ด ERD๋ฅผ ์ค๊ณํ์ต๋๋ค. https://aquerytool.com/ AQueryTool - AQuery.Web {{source.erd_info.erd_name + '(' + source.erd_info.db_type + ')'}} aquerytool.com ๋ชจ๋ ํ ์ด๋ธ ์์ฑ SQL ์ต์ ์ ํตํด SQL ์ฟผ๋ฆฌ๋ฅผ ์์ฑ ์์ฑ๋ SQL ์ฟผ๋ฆฌ๋ฅผ DataGrip์ ๋ณต์ฌ - ๋ถ์ฌ ๋ฃ๊ธฐ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bkQ21v/btqS3acgZrX/MhksAXeKN7i43KRknaO3hK/img.png)
๋ค ๋ฒ์งธ ๊ณผ์ 1. Let's Encrypt๋ฅผ ์ฌ์ฉํ์ฌ ๋ณด์ ์ฐ๊ฒฐ HTTPS ์ฐ๊ฒฐ์ด ๋๋๋ก ํ๊ธฐ ์ํด SSL ์ธ์ฆ์๋ฅผ ์ป๊ธฐ. SSL ์ธ์ฆ์๋? SSL ์ธ์ฆ์๋ ์ธํฐ๋ท ๋ณด์์์ ์ค์ถ์ ์ธ ์์์ ๋๋ค. ๋์งํธ ์ธ์ฆ์๋ผ๊ณ ๋ ํ๋ SSL(๋ณด์ ์์ผ ๊ณ์ธต) ์ธ์ฆ์๋ ๋ธ๋ผ์ฐ์ ๋๋ ์ฌ์ฉ์์ ์ปดํจํฐ์ ์๋ฒ ๋๋ ์น์ฌ์ดํธ ๊ฐ์ ์ํธํ๋ ์ฐ๊ฒฐ์ ์๋ฆฝํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. SSL ์ฐ๊ฒฐ์ ์ธ์ฆ๋์ง ์์ ์ฌ์ฉ์์ ๋ฐฉํด๋ก๋ถํฐ ๊ฐ ๋ฐฉ๋ฌธ(์ธ์ ) ์ค์ ๊ตํ๋ ์ค์ํ ๋ฐ์ดํฐ(์: ์ ์ฉ์นด๋ ์ ๋ณด)๋ฅผ ๋ณดํธํฉ๋๋ค. ์น ์ฌ์ดํธ๋ฅผ ๊ตฌ์ถํ๊ฑฐ๋ ์ด์ํ ๋ ๋ณด์ ์ฐ๊ฒฐ์ธ HTTPS์ฐ๊ฒฐ์ ํ์์ ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์์์ ๊ตฌ์ถํ ๋๋ฉ์ธ์ HTTPS์ฐ๊ฒฐ์ ํด ๋ณผ ๊ฒ์ ๋๋ค. Let's Encrypt๋ฅผ ์ด์ฉํ๋ฉด ๋ฌด๋ฃ๋ก HTTPS ๋ณด์ ์ฐ๊ฒฐ์ ์งํํ ์ ..