SK, ์นด์นด์ค๋ฅผ ๊ฑฐ์ณ ๊ฐ๋ฐ์๋ก ์ผํ๋ฉฐ
๋ค์ํ ๋ฐฑ์๋ ์์คํ
์ ์ค๊ณํ๊ณ ์ด์ํด์์ต๋๋ค.
์ํํธ์จ์ด ์ง์์ ์ค์ ์๋ ์๋ํ๋๋ก ๋ง๋ค๊ณ , ์ด์ํด๋ณด๋ฉฐ ์ฒด๋ํ๋ ๊ฒฝํ์ ๋ด๊ณ ์ถ์์ต๋๋ค.
์ด ๋ฐฐ์์ด ์ฌ๋ฌ๋ถ์ ์ค๋ฌด์ ๋์์ด ๋์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
๋ฌธ์: apiece.dev.ai@gmail.com
Courses
Reviews
- Completing a Full Cycle of Backend Service with Spring Boot and AWS
- Completing a Full Cycle of Backend Service with Spring Boot and AWS
- Completing a Full Cycle of Backend Service with Spring Boot and AWS
- Completing a Full Cycle of Backend Service with Spring Boot and AWS
Posts
Q&A
๋๊ธ ์์ฑ, ์ญ์ ์ ๊ฒ์๊ธ์ ๋๊ธ ์ ์ฆ๊ฐ ๋ก์ง ์ง๋ฌธ
์๋ ํ์ธ์, ๋นํฉํ ๋๊ตฌ๋ฆฌ๋ํ์ฌ CommentService ์์ ๋๊ธ ๋ฟ๋ง ์๋๋ผ ๊ฒ์๊ธ์ ๊ดํ ์ฑ ์์ด ํจ๊ป ์๋ ์ํฉ์ธ๋ฐ์.์๋น์ค๊ฐ ์ปค์ ธ๊ฐ์ ๋ฐ๋ผ ๋ฐ์ํ ์ ์๋ ์ ์ง๋ณด์์ฑ ๋ฌธ์ ๋ฅผ ์ ์ง์ ํด์ฃผ์ จ๋ค์. ์ค๋ฌด์์ ์ฑ ์์ ๋ถ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋1) ๊ฐ์ฅ ๊ฐ๋จํ๊ฒ๋ PostService ์ ๋๊ธ์๋ฅผ ์ฆ๊ฐํ๋ ๋ฉ์๋๋ฅผ ๋ง๋ ๋ค, CommentService ์์ ์ด๋ฅผ ํธ์ถํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์ด๋ ๊ฒ ๋๋ฉด CommentService ๊ฐ PostService ๋ฅผ ์์กดํ๊ฒ ๋๋๋ฐ, ๊ทธ ๋ฐ๋๋ก๋ ์์กดํ์ฌ ์ํ์ฐธ์กฐ ๋์ง ์๋๋ก ๊ฐ๋ฐ ๋ด๋ถ ๊ท์น์ ๋์ด ํ ๋ฐฉํฅ์ผ๋ก๋ง ์์กดํ ์ ์๊ฒ ๊ฐ์ ํ๋ฉด ์ข์ต๋๋ค. 2) ๋ฐ๋๋ก, PostService ์ ๋๊ธ ์์ฑ ๋ฉ์๋๋ฅผ ๋ง๋ ๋ค, CommentService ์ ๋๊ธ ์์ฑ ๋ฉ์๋๋ง ํธ์ถํ๋๋ก ๋ง๋ค์ด๋ ๋ฉ๋๋ค.PostService createComment() Post ์กฐํ ๋ฐ ๊ฒ์ฆ CommentService.createComment() ํธ์ถ Post์ ๋๊ธ ์ ์ฆ๊ฐ ๋ฐ ์ ์ฅPostService ๋ฅผ ๋น์ฆ๋์ค ํ๋ก์ฐ ์ง์ ์ ์ผ๋ก ์ ํด๋๊ณ , CommentService ๋ ๊ฐ๋จํ๊ฒ ๋๊ธ์ ์ ์ฅํ๋ ์์ ๋๋ค. ์ฆ, ๊ฒ์๊ธ, ๋๊ธ์ด ๋์์ ์ฌ์ฉ๋๋ค๋ฉด ์ง์ ์ ์ ํญ์ PostService ๋ก ๊ท์น์ ์ ํ๋ ๊ฒ๋๋ค. ์ด๋ฅผ ํตํด ๋น์ฆ๋์ค ๋ก์ง์ ํต์ผ์ฑ์ ๋ถ์ฌํ๊ณ , ์์์ ์ธ๊ธํ ์ํ์ฐธ์กฐ ๋ฌธ์ ๋ ์๊ฒ ๋ฉ๋๋ค. 3) PostService, CommentService ์์ ์์ ๊ณ์ธต์ ๋ง๋ค์ด ์ด๊ณณ์์ ๋ ๋ก์ง์ ์กฐํฉํฉ๋๋ค.๊ฐ๋ น, CommentCreationUseCase ๋ฅผ ๋์ด ์ถ์ํ๋ ๊ฒ์๊ธ, ๋๊ธ ํตํฉ ์ฒ๋ฆฌ๋ฅผ ๋ด๋นํ๊ฒ ํ๋ฉด ๋ฉ๋๋ค.์ด๋ฅผ ํตํด ๊ฐ ์๋น์ค๋ ์์ ์ด ๋งก์ ๋๋ฉ์ธ ๋ก์ง์๋ง ์ง์คํ ์ ์๊ณ , ๋ณต์กํ ํธ๋์ญ์ ์ด๋ ๋น์ฆ๋์ค ๊ท์น์ CommentCreationUseCase์์ ์ผ๊ด์ฑ ์๊ฒ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ์ ๊ฐ ์ ํ์ง๋ฅผ ์ฌ๋ฌ๊ฐ ๋๋ ธ๋๋ฐ, ์ด ์ธ์๋ ๋๋ฉ์ธ ์ด๋ฒคํธ ๋ฐํ ๋ฑ ๋ค์ํ ๋ฐฉ๋ฒ์ด ์์ ์ ์์ต๋๋ค. ๊ฐ์์์๋ ๊ฐ๋จํ ๋ก์ง์ ๋ค๋ฃจ๊ณ ์๋ค๋ณด๋ CommentService ์์ ๋ชจ๋ ์์ ์ ์ฒ๋ฆฌํ๊ณ ์์ต๋๋ค.๊ฐ์ธ์ ์ผ๋ก๋ ํ์ฌ ์๋น์ค ์์ค์์ ๊ณผํ์ง ์๊ฒ ํ์ํ ์ ๋๋ก ์ฑ ์์ ๋ถ๋ฆฌํด์ฃผ๋ฉด ์ข๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 1
- 1
- 18
Q&A
https ์ค์ ์ง๋ฌธ
์๋ ํ์ธ์ ๊นํ์ฐ๋!๋จผ์ ๋ฒ๊ฑฐ๋ก์ฐ์คํ ๋ฐ ์ง๋ฌธ ๋จ๊ฒจ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.์ง์ ์ค์นํ์ฌ ์คํ์ํค๋ ๋ฐฉ๋ฒ๊ณผ ๋์ปค๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ์ค ๊ณ ๋ฏผํ์๊ณ ๊ณ์ ๋ฐ์. ์ด๋ค ๊ฒ์ผ๋ก ํ๋ ์๊ด์ ์์ต๋๋ค. ๋ค๋ง ์ ํฌ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋์ปค๋ก ๊ตฌ์ฑํ๊ณ , ์ด๋ฏธ ํ๊ฒฝ์ด ๋ง๋ จ๋์ด ์์ผ๋ ์ด docker compose ์์ nginx, certbot ์ ํจ๊ป ๊ด๋ฆฌํ์ ๋ ๋ฉ๋๋ค. ๋จ, ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์คํํ๊ฑฐ๋ ์ข ๋ฃํ ๋ nginx, certbot ๋ ํจ๊ป ์ข ๋ฃ๋์ง ์๋๋ก ์ฃผ์ํด์ฃผ์๋ฉด ๋ฉ๋๋ค.์ด๋ ๊ฒ ํ๋ฒ์ ๊ตฌ์ฑ์ ํ๋ฉด ๋ณด๊ธฐ์ฝ๊ณ ๊ด๋ฆฌ๊ฐ ํธํ๋ค๋ ์ฅ์ ๋ ์์ง๋ง, ๋ฐ๋๋ก nginx, certbot, spring boot ๊ฐ ๋ชจ๋ ์ฎ์ฌ์๋ค๋ณด๋ ํ๋๋ง ์๋ชป๋๋๋ผ๋ ์คํ์ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ ๋จ์ ๋ ์์ต๋๋ค.๊ทธ๋์ docker compose ์์ ํ๋๋ก ๋ฌถ์ง ์๊ณ , ๊ฐ๊ฐ ๋์ปค ์ค์ ์ ๋ง๋์ ์ ๊ฐ๊ฐ ์คํํ์๋๊ฒ ๊ด๋ฆฌํ๊ธฐ ํธํ ์๋์์ต๋๋ค.ํ์ฌ ์ถ์ฒํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋ฐ๋จ๊ณ์ด๋ ํ๋์ ๋์ปค ์ปดํฌ์ฆ์ ๋ฌถ์ด์ ๋น ๋ฅด๊ฒ ๋ฐฐํฌํด๋ณด์๊ณ , ์๋น์ค๊ฐ ์ปค์ง๋ฉด ๋ถ๋ฆฌํ์ฌ ๊ฐ๊ฐ์ ์๋น์ค๋ฅผ ๊ณ ๋ํํด๋ณด์๋๊ฒ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 37
Q&A
์น์ 5-26. AWS EC2 ์๋ฒ ๋ฐฐํฌ ํํธ ์ง๋ฌธ์ ๋๋ค.
์๋ ํ์ธ์, ๊น๋ณ์ง๋!๋จผ์ ๋ฒ๊ฑฐ๋ก์ฐ์คํ ๋ฐ ์ง๋ฌธํด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.1) Error: connect ECONNREFUSED IPv4:8080 ๋ผ๋ ์๋ฌ๋ ์๋ฒ(AWS)๊ฐ ํด๋ผ์ด์ธํธ(Postman)์ ์ฐ๊ฒฐ์ ๊ฑฐ๋ถํ๋ค๋ ๋ป์ ๋๋ค. ํนํ ํด๋นํฌํธ(8080)์ ์ฐ๊ฒฐ์ ๊ฑฐ๋ถํ ๊ฒ์ด๋, ๊ฐ์์์ ์ค๋ช ๋๋ ธ๋ ๋ณด์๊ทธ๋ฃน์ค์ ์ ๋ฌธ์ ๊ฐ ์๋์ง, ์ ์ ์ฉ๋์๋์ง ํ๋ฒ ํ์ธํด์ฃผ์ธ์. 2) 500 Internal Server Error ์ด๋ฐ ์๋ฌ๊ฐ ์๋ค๋๊ฑด 1๋ฒ ๋ฌธ์ ๋ ํด๊ฒฐ๋์๋ค๋ ๋ป์ด์์. ์ฆ, 8080ํฌํธ๋ก ์ฐ๊ฒฐ์ ์ฑ๊ณตํ๋๋ฐ, ์๋ฒ ๋ด๋ถ๋ก์ง์์ ๋ฌด์ธ๊ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํด์ '๋ด๋ถ ์๋ฒ ์๋ฌ' ๋ผ๊ณ ์๋ต์ ๋ด์ด์ค๊ฑฐ์์. ์ด ๋๋ ์๋ฒ์์ ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋์ง ๋ก๊ทธ ํ์ธ์ด ํ์ํฉ๋๋ค. GET /api/posts/1 ๋ฅผ ํธ์ถํ์ผ๋, ์ผ๋จ id: 1 ์ ๊ฐ์ง ๊ฒ์๊ธ์ด ์กด์ฌํ์ฌ์ผ ์กฐํ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ฐ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๋์ง ํ์ธํด๋ณด์ธ์.๊ทธ๋๋ ์๋์ง ์๋ ๋ค๋ฉด, ๋ก๊ทธ๋ฅผ ํ์ธํด๋ณด์ธ์. ๋์ปค๋ก ์คํํ์ผ๋ ๋์ปค ๋ก๊ทธ๋ฅผ ํ์ธํ๋ฉด ๋ฉ๋๋ค. docker logs ์ฌ๊ธฐ์ ์๋ฌ๋ฅผ ํ์ธํ๊ณ ํด๊ฒฐํด๋ณด์ธ์. ์ ํ๋ฆฌ์ง ์์ผ๋ฉด ํด๋น ์๋ฌ๋ฅผ ๊ฐ์ง๊ณ ๋ค์ ์ง๋ฌธ ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 39
Q&A
๊ฐ์๋ด์ฉ ์ค ์ง๋ฌธ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์ ๊ฒฝ์ธ๋,์ง๋ฌธ์ ์ํด ์ฌ๋ฌ ์๋ฃ์ ์ค๋ช ๊ฐ์ฌ๋๋ ค์. ๊ฐ์์ ๋์ค๋ ๋ก๊ทธ๋ ์๋ง SQL ์ฟผ๋ฆฌ ๋ก๊ทธ์ผํ ๋ฐ์.spring.jpa.show-sql: true์ค์ ์ application.yaml ํ์ผ์ ์ค์ ํ์ จ์๋ค๋ฉด ์ ์์ ์ผ๋ก ์ถ๋ ฅ๋์์ ๊ฑฐ์์. ์ง๋ฌธ์๋ ๋๋ฒ์งธ ์๋์์๋ ํ๊ฒฝ๋ณ์๋กSPRING_JPA_SHOW_SQL=true๋ฅผ ๋ฑ๋กํด๋์๊ธฐ ๋๋ฌธ์, ๋ก๊ทธ๊ฐ ์ ์ถ๋ ฅ๋์์ ๊ฑฐ๊ตฌ์. ์ฌ์ฉํ์ ์ด๋ฏธ์ง์ ์ด๋ค ์ค์ ๊ฐ์ด ์๋์ง ํ์ธ์ด ์ด๋ ค์ ์ ์ ํ ํ๋จ์ ๋ชปํ๊ฒ ์ผ๋ ์ ์ค์ ๊ฐ์ด ์๋์ง ํ์ธํด๋ณด์๋ฉด ์ข์๊ฒ๊ฐ์์.๊ทธ๋ฆฌ๊ณ ๋ก์ปฌ์์ ๋จผ์ ์คํํด๋ณด์๊ณ ์๋์๋ฉด ec2์ ๋ฐฐํฌํด์ ํ ์คํธํด๋ณด์๋ฉด ํ์ธ์ด ์ฌ์ธ๊ฑฐ์์.๊ฐ์ฌํฉ๋๋ค.
- 1
- 1
- 69
Q&A
jakarta persistence ํ๋ฌ๊ทธ์ธ์ intellij ultimate์์๋ง ์ฌ์ฉ๊ฐ๋ฅํ๋ค๊ณ ๋์ค๋ค์.
์๋ ํ์ธ์ gydo75 ๋!๊ฐ์์ ๋์๋๋ ํผ๋๋ฐฑํด์ฃผ์ ์ ์ง์ฌ์ผ๋ก ๊ฐ์ฌํฉ๋๋ค. ๊ฐ์์๋ฃ์ ๋ฐ์ํด๋๊ฒ ์ต๋๋ค.๊ฐ์ฌํฉ๋๋ค. (25/7/16 ์์ )jakarta persistence ํ๋ฌ๊ทธ์ธ์ ๊ฐ์์์ ์ฌ์ฉํ๊ณ ์์ง ์์ต๋๋ค. ๊ทธ๋์ ๋ณ๋๋ก ์ค์นํ ํ์๊ฐ ์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 60
Q&A
๋ค์ด๋ฐ์ ๊ฐ์์๋ฃ ์์ถํ๊ธฐ๊ฐ ์๋์
๋งฅ์์ ์์ถํ ํ์ผ์ด ์๋์ฐ์์ ๊นจ์ง๋ ํ์์ด ์์์ต๋๋ค.๋ฌธ์ ํด๊ฒฐํด์ ๊ฐ์์๋ฃ ๋ค์ ์ฌ๋ ค๋์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 66
Q&A
๋ค์ด๋ฐ์ ๊ฐ์์๋ฃ ์์ถํ๊ธฐ๊ฐ ์๋์
์๋ ํ์ธ์ ๋ถํธ์ ๋๋ ค ์ฃ์กํฉ๋๋ค. ์์๋ก ๊ตฌ๊ธ ๋๋ผ์ด๋ธ์ ์ฌ๋ ค๋์์ผ๋ ํ์ธ๋ถํ๋๋ฆฝ๋๋ค. https://drive.google.com/drive/folders/1k5AA_Z0B0dPaoiuUybdHAcwF1W-p4gYY?usp=sharing ํ์ผ ๋ค์ด๋ก๋ ๋ฌธ์ ๋ ์ถํ ๋ฌธ์ ๋ฅผ ์กฐ์นํ๊ฒ ์ต๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 66
Q&A
๋ด๋ถํธ์ถ : ์๊ธฐ์์ ์ฃผ์
์ด๋ฏธ ํ์ฐธ์ ์ ๋ฉ๋ด์ผ์ ์ ํ์์๋ค์ ํ์ธ๋ ์ํ๊ณ ^^;; ๋น ๋ฅธ ๋ต๋ณ ๊ฐ์ฌ๋๋ฆฝ๋๋ค!!
- 4
- 2
- 806