์์ฃผ์์ฃผ ์ค๋๋ง์ ํฌ์คํ ํ๋ค์ :) ์ด์ ์ง์ฅ์ ๊ทผ๋ฌดํ๊ฒฝ๋ ๊ฝค ๊ด์ฐฎ์์ง๋ง ๊ฐ๋ฐํ๊ณผ ๊ฒฝ์์ง๊ฐ์ ๊ฐ๋ฑ์ผ๋ก ์ธํด ์ธ๋ฌ๋ง์ ๊ทธ๋ง๋๊ฒ ๋์์ต๋๋ค. ใ ใ ๋ ์ค๋ ์ผํ๊ณ ์ถ์๋ค๊ตฌ..... ๊ทธ๊ณณ์์๋ ๊ฝค ๋ง์๊ฑธ ๋ฐฐ์ฐ๊ณ ์ฑ์ฅ ํ์ง๋ง, ๋ ๋์ ํ๊ฒฝ์ด ์์๊ฑฐ๋ผ ์๊ฐํ๊ณ ์ธ๋ฉฐ๊ฒจ์๋จน๊ธฐ๋ก ํด์ฌํ๊ณ ์ด๋ ฅ์๋ฅผ ๋ ๊ต์ฅํ ๋ง์ด ๋๋ ธ์ฃ ...! ํ์ ์ด์ปค๋จธ์ค์ชฝ์ ๊ด์ฌ์ด ๋ง๊ธฐ๋ ํ๊ณ ...
์์ธ์ ์ ์ฐฉํ์ง๋ ๋ฒ์จ 3๋ ์ด๋ ์ง๋ฌ์ต๋๋ค. ์ฌ์ค ์๊ตญ์์ ๋์์จ ํ๋ก๋ถํฐ ์๊ฐ์ด ๋๋ฌด ๋น ๋ฅด๊ฒ ์ง๋๊ฐ ๊ทธ์ ๋นํ๋ฉด 3๋ ์ ์ ๋ง ์งง๋ค๊ณ ๋๊ปด์ง์ง๋ง, ์ทจ์ค์ ํ๋ 2๋ ์ ์์ฃผ์์ฃผ ๊ธธ์๋ ๊ฒ ๊ฐ์์. ์ํ๊ธฐ ๊ทธ ์์ฒด์๊ตฌ์ใ ใ ๊ทธ๋๋ ์์ ๋ ๋ ํ๊ฒ ์ํฌํ ํด์ฃผ๋ ์ง๊ฟ์ด ์์ด์
https://infoscoco.com/92redis.conf ํ์ผ ์ค์ ๋๋ด๊ณ ๋์, ์๋น์ค ์ฌ์์ ํด์คซ๋๋ฐ ๊ณ์ํด์ ์๊ฒฉ ์ ์์ด ์๋๊ธธ๋ ์ฐพ์๋ณด๋๊นsudo systemctl restart redis-server๋ก ์ฌ์์์ ํด์ผ ํ๋ ๊ฒ...๋ชจ๋ ๋ธ๋ก๊ทธ๋ฅผ ๋๋ฌด
https://shxrecord.tistory.com/182https://victorydntmd.tistory.com/334https://honeywater97.tistory.com/139S3 ๋ฒํท์ ํ์ผ ์ ๋ก๋ ํ๋ ค๊ณ ํ๋๋ฐ ์ค๋ฅ ๋ฌ์ ๋t
์ด๋ฒ ํฌ์คํ ์์๋ Spring Boot Maven ํ๋ก์ ํธ๋ฅผ Jenkins๋ฅผ ์ด์ฉํด CI/CD ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ณ ์ ํฉ๋๋ค.Jenkins๋ฅผ ์ค์นํ๊ณ ์ค์ ํฉ๋๋ค. Jenkins ์ค์น ๊ฐ์ด๋๋ ๊ณต์ ํํ์ด์ง๋ฅผ ์ฐธ๊ณ ํ์ธ์.Jenkins Plugin Manager์์
CI(Continuous Integration)์ CD(Continuous Delivery/Deployment)๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค์์ ์๋ํ๋ ๋น๋, ํ ์คํธ, ๋ฐฐํฌ๋ฅผ ์ํด ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ๋ก ์ ๋๋ค.CI๋ ๊ฐ๋ฐ์๋ค์ด ์์ฑํ ์ฝ๋๋ฅผ ์๋์ผ๋ก ๋น๋ํ๊ณ ํ ์คํธํ๋ ๊ณผ์ ์
Java ๋ฅผ ์ ํด๋ณด์ง ์์ ์ฌ๋์ด๋ผ๋ Collection ์ด๋ผ๋ ๋จ์ด๋ฅผ ๋ค์ผ๋ฉด ๋๋์ ์ผ๋ก ์ค๋ ์ด๊ฐ์ด ์์ ๊ฒ์ ๋๋ค. ํนํ ๋ฏธ์ ์ ์๋ฅผ ํ ๋ โ๋๊ตฐ๊ฐ์ ์ปฌ๋ ์ โ ๊ณผ ๊ฐ์ด โ๋ชจ์โ ๋๋ โ์์งโ ๊ณผ ๊ฐ์ ๋ฌ์์ค๋ก ์ฌ์ฉ๋๊ณค ํฉ๋๋ค. Collection Framework
https://velog.io/@sorzzzzy/MSA-MSA๋ฅผ-์ํ-๊ธฐ์ 1-Spring-Boot-Spring-Cloud-Docker
๋ณธ์ธ์ Spring Boot๋ก SNS ํ๋ซํผ์ ๋ง๋ค์์ต๋๋ค. ๋ถ๋ช ํ ๋ก์ปฌ์์ ํ ์คํธ ํ ๋๋ ์ธ๋ถ API(Facebook Social Login) ๊ฐ ์ ์์ ์ผ๋ก ์๋๋๊ณ ์์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ Deploy ์ดํ ํด๋น์ ์ ๊ทผ์ด ๋์ง ์๋ ์ด์๊ฐ ๋ฐ์ํ์ต๋๋ค. ์น์ ํ๊ฒ๋ Fa
๊ธฐ์ ๋ฉด์ ์ ์ํ JAVA CS ์ง์ ์ ๋ฆฌ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๊ธฐ ์ ๋ต-DDL AUTO ์ต์ )
๊ธฐ์ ๋ฉด์ ์ ์ํ JAVA CS ์ง์ ์ ๋ฆฌ(Spring Data JPA ๊ฐ์)
JPA ๋์ ์ฟผ๋ฆฌ/์ ์ ์ฟผ๋ฆฌOAuth2.0์ผ๋ก ๋ก๊ทธ์ธ ๊ตฌํJWTthymeleaf/mustache/JSP ์ฐจ์ด์ ๊ฐ DB๊ฐ ๊ณตํต์ /์ฐจ์ด์ JPA/QLRM/ORMMVC ํจํด์ฑ๊ธํคAOPMavenGradle
์ด ๊ฒ์๊ธ์ ๋ณด๊ณ ์๋ ์ฌ๋์ด๋ผ๋ฉด,์ ํฌ์ ๋น์ทํ ์ํฉ์ด ์๊ฒผ๊ฑฐ๋, ๋์์ด ํ์ํ์ ๋ถ์ด๋ผ ์๊ฐํฉ๋๋ค.๊ทธ๋์ ๊ฒฐ๋ก ๋ถํฐ ์์ฑํ๊ณ ํฌ์คํ ์์ํ๊ฒ ์ต๋๋ค.๋ณธ์ธ ๊ณผ์ค์ด ์๋ค๋ฉด 99.9999% ํ๋ถ ๋ฐ์ ์ ์์ต๋๋ค.์ ์ผ ์ค์ํ ๊ฑด ์ธ์ด๊ฐ ํตํ์ง ์๋๋ค๊ณ ๋ฉ๋ถํ์ง ์๊ณ ์นจ์ฐฉํ๊ฒ
๊ฐ์์์กด์ฑ ์ฃผ์ ์ด๋ ๊ฒ์ ํ ๋ @Autowired ๋์ ์์ฑ์ ์ฃผ์ ์ ํ์ฉํ๋ฉด ์ข๋ค๊ณ ํ๋ค. ์ผ๋จ ๋ฐ๋ก ์ ์ฉํ ์ ์๋ ์์ฑ์ ์ฃผ์ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๊ฒ ์ ์ด๋ณด๊ฒ ๋ค.์์กด์ฑ์ด ๋ญ๋ฐ?HelloWorld ํด๋์ค์์ helloํจ์๊ฐ ํธ์ถ๋๊ธฐ ์ํด์๋ SayHello ํด๋์ค๊ฐ ํ์
์ฐ๋ฆฌ๋ POST ์์ฒญ์ ํตํด ๋ธ๋ผ์ฐ์ ์ BODY ์์ญ์ ์๋ Form ๋ด๋ถ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ ์ฅํ๊ณ ์ถ์ ๋๊ฐ ์๋ค.Spring Boot์์๋ DTO(Data Transfer Object)๋ผ๋ ๊ฑธ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ก ๋ฐ์ ํ, Entityํ ์ํจ ์ดํ ๋น
ViewController์์ ๊ฐ CRUD ์์ฒญ์ ๋ํ ๋๋ฉ์ธ ์ค์ ์ด ์๋ฃ ๋์๋ค๋ฉด?์๋์ ๊ฐ์ด ๊ฐ CRUD์ ๋ํ ๋งคํ์ ๋ง์ณค๋ค๋ฉด ํน์ ํ์ด์ง๋ ๊ถํ ๋ถ์ฌ ์์ด๋ ์ ๊ทผ์ด ๊ฐ๋ฅํ๊ฒ ์ง๋ง,๊ฐ์ธ์ ๋ณด๋ ์ค์ํ ๋ฉ์์ง๊ฐ ๋ด๊ธด ํ์ด์ง๋ค์ ๋ํด์๋ ๊ถํ์ ๊ฐ๊ณ ์๋ ์ฌ์ฉ์๋ง ์ ๊ทผ์ด
๋ด์ฅ ํฐ์ผ์ ๊ฐ์ง๋ค.ํฐ์ผ์ ๋ฐ๋ก ์ค์นํ ํ์ ์์ด ๋ฐ๋ก ์คํ๊ฐ๋ฅํ๋ค.์น์๋ฒ(์ํ์น)๋ ์๋ฐ์ฝ๋๋ฅผ ์ฝ์ ์ ์๊ธฐ ๋๋ฌธ์ jsp์ ๊ฐ์ ํ์ผ์ ์น๋ธ๋ผ์ฐ์ ์ ์์ฒญ์ ๋ํด์ ์๋ตํด์ค ์๊ฐ ์๋ค.์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํฐ์ผ์ด ์กด์ฌํ๋ค.ํฐ์ผ์ jspํ์ผ์ ์๋ฐ์ฝ๋๋ฅผ ์ปดํ์ผ ํ์ฌ ht
JPA๋ Java Persistance API ์ด๋ค.RAM์ ์ ๊ธฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ์ ๋ฅ ๊ณต๊ธ์ด ์๋๋ฉด ๋ ์๊ฐ๋ ํ๋ฐ์ฑ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค๋ ํน์ง์ ๊ฐ์ง๊ณ ์๋ค. ์ฆ, ์ปดํจํฐ๊ฐ ๊บผ์ง๋ฉด ๋ฐ์ดํฐ๊ฐ ๋ ์๊ฐ๋ค. ๊ทธ๋์ ์ปดํจํฐ๊ฐ ๊บผ์ง๋๋ผ๋ ๋ฐ์ดํฐ๊ฐ ์ง์์ง์ง ์๋๋ก ํ๊ธฐ
์คํ๋ง์ ํ๋ ์์ํฌ์ด๋ค.์ผ๋จ ํ๋ ์์ ํ์ด๋ผ๋ ๋ป์ด๊ณ , ์ํฌ๋ ์ผ์ ํ๋ค๋ผ๋ ๋ป์ด๋ค. ์ฆ ํ๋ ์์ํฌ๋ ํ์์์ ํน์ ์ผ์ ํ๋ ๊ฒ์ ๋งํ๋ค. ํ๋ ์์ํฌ๋ ํ ์์์ ๋ฒ์ด๋ ์์ ํ์ง ๋ง๊ณ , ์ ๊ณต๋ ํ์ ๋ง์ถฐ ๊ฐ๋ฐํ๋ ๊ฒ์ด ํ๋ ์์ํฌ์ด๋ค.์คํ๋ง์ ์คํ์์ค์ด๋ค.์คํ์์ค๋ผ๋
์ด์ ๋ ๊ทธ๋์ ๊ฐ๋ฐํ๋ ๊ฒฐ๊ณผ๋ฌผ๋ค(๊ฐ์ธ/ํํ๋ก์ ํธ)์ ๋ํ ํผ๋๋ฐฑ์ ์ป๊ณ ์ OKKY์ ๊ธ์ ์ผ๋ค.๋ฐฐํฌ URL๋ฟ๋ง ์๋๋ผ, ๊ฐ๋ฐ ์ฝ๋๊ฐ ๋ด๊ธด ๊นํ๋ธ ๋ ํฌ์งํ ๋ฆฌ ๋งํฌ๋ ๊ฐ์ด ์ฒจ๋ถ ํ์๋๋ฐ, ์ด๋ฐ ๋๊ธ์ด ๋ฌ๋ ธ๋ค.์ต๊ทผ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ด๋ จ๋ ์ํฐํด์ ์ฝ์ผ๋ฉด์ ํด๋ฆญ ํ ๋ฒ์ ์ค์