ggomulll36192
@ggomulll36192
Reviews Written
1
Average Rating
5.0
Posts
Q&A
๋ฐฑ์๋ ํ๋ก ํธ์๋ ๋ฐฐํฌ ํ๋ฆ์ด ์ดํด๊ฐ ์๊ฐ๋๋ค.
๋ฐฑ์๋์ ํ๋ก ํธ์๋ ํต์ ๊ตฌ์กฐ๋ฅผ ์ฐพ์๋ณด๋ฉฐ ์ข ๋ ๊ณต๋ถํด๋ณด์๋๋ฐ ์๋์๊ฐ์ด ์ดํดํด๋ ๊ด์ฐฎ์๊น์? 3000๋ฒ ํฌํธ๋ React ์ฑ์ ์ค์๊ฐ์ผ๋ก ๋ณด์ฌ์ฃผ๊ธฐ ์ํ ๊ฐ๋ฐ ์ ์ฉ ์๋ฒ์์๋ง ์ฌ์ฉ๋๋ฉฐ, ์ด์ ํ๊ฒฝ์์๋ React ์ฑ์ buildํ ํ ์์ฑ๋๋ ์ ์ ํ์ผ(index.html, CSS, JS ๋ฑ)์ S3, Nginx, CloudFront ๋ฑ์ ์ ๋ก๋ํ์ฌ ์ ์ ํธ์คํ ์ ์ฌ์ฉํ๋ค. ์ฌ์ฉ์๊ฐ www.home.com๊ณผ ๊ฐ์ ๋๋ฉ์ธ์ ์ ๊ทผํ๋ฉด1. ๋ธ๋ผ์ฐ์ ๋ ํด๋น ์๋ฒ(S3/Nginx)๋ก๋ถํฐ index.html์ ๋ค์ด๋ก๋ํ๋ค.2. index.html์ ๋ด๋ถ์์ main.js(React ๋ฒ๋ค)๋ฅผ ๋ก๋ํ๋ค.3. ๋ธ๋ผ์ฐ์ ๋ ์ด js๋ฅผ ์คํํ์ฌ React ์ฑ์ ์์ํ๋ค.4. ์ดํ ํ์ด์ง ์ด๋์ ๋ชจ๋ React๊ฐ ๋ธ๋ผ์ฐ์ ๋ด์์ js๋ก ๋์ ์ผ๋ก ์ ํํ๋ค. ์ฌ์ฉ์ ์ก์ (๋ฒํผ ํด๋ฆญ ๋ฑ)์ผ๋ก ์ธํด https://api.home.com/api/find ์ ๊ฐ์ ๋ฐฑ์๋ API ์์ฒญ์ด ๋ฐ์ํ๋ฉด,5. ๋ธ๋ผ์ฐ์ ์์ React ์ฑ์ด ๋ฐฑ์๋(Spring, 8080 ํฌํธ)๋ก API ์์ฒญ์ ๋ณด๋ด๊ณ ,6. Spring ์๋ฒ๊ฐ ์๋ต์ ๋ฐํํ๋ค.7. React๊ฐ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ๋ฉด์ ๋ ๋๋งํ๋ค. ์ฆ ์ฌ์ฉ์์์ฒญ โ 3000๋ฒ ํฌํธ๋ก ํ๋ฉด ๋์์ค โ 8080ํฌํธ๋ก API ์์ฒญ ํ ์๋ต ๋ฐํ โ 3000๋ฒ ํฌํธ๋ก ํ๋ฉด ๋์ด ๋ค ๋ธ๋ผ์ฐ์ ์ ์ ๋ฌ โ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ค์ด ์๋๋ผ์ฌ์ฉ์ ์์ฒญ -> https://www.home.com (ํฌํธ๋ 443, HTTPS) -> CloudFront or S3 or Nginx (์ ์ ํ์ผ ํธ์คํ ) -> index.html + main.js + CSS ๋ฑ React ์ ์ ํ์ผ ๋ค์ด๋ก๋ -> ๋ธ๋ผ์ฐ์ ๊ฐ main.js ์คํ โ React ์ฑ ๊ตฌ๋ -> React ์ฑ์ด ํ์ํ ๋ ๋ฐฑ์๋ API (์: https://api.home.com/api/user) ์์ฒญ -> Spring ์๋ฒ (8080ํฌํธ) ์๋ต -> React๊ฐ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ๋ ๋๋ง React๊ฐ 3000๋ฒ ํฌํธ๋ฅผ ์ฐ๋ ์ด์ npm start๋ก ์คํํ ๋, React๋ Webpack Dev Server๋ผ๋ ๊ฐ๋ฐ์ฉ ์๋ฒ๋ฅผ ๋์ด๋ค.์ด ์๋ฒ๋ HTML/CSS/JS๋ฅผ ์ค์๊ฐ์ผ๋ก ์ ๊ณตํ๋ฉฐ, ์ฝ๋๊ฐ ๋ฐ๋ ๋๋ง๋ค ์๋ ๋ฆฌ๋ก๋๋๋ ๊ธฐ๋ฅ์ด ์๋ค(Hot Reload).์ด ์๋ฒ๋ ํ๋ก ํธ ๊ฐ๋ฐ์ ํธ์๋ฅผ ์ํ ๊ฒ์ด์ง, ์ค์ ์๋น์ค์ฉ ์๋ฒ๊ฐ ์๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก 3000๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ์ง๋ง, ๋ค๋ฅธ ํฌํธ๋ก ๋ฐ๊พธ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค.์ฆ ์ด์ ์์ ์์๋ 3000๋ฒ ํฌํธ๊ฐ ์กด์ฌํ์ง ์๋๋ค. Spring์ด 8080๋ฒ ํฌํธ๋ฅผ ์ฐ๋ ์ด์ Spring Boot๋ ๊ธฐ๋ณธ์ ์ผ๋ก 8080 ํฌํธ๋ฅผ ์ฌ์ฉํด API ์๋ฒ๋ฅผ ์ฐ๋ค.์ด ์๋ฒ๋ ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ , React ์ฑ ๋ฑ) ์ ์์ฒญ์ ๋ฐ์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ฑฐ๋ ๋น์ฆ๋์ค ๋ก์ง์ ์ฒ๋ฆฌํ๋ค.์ด์ ํ๊ฒฝ์์๋ API ์๋ฒ๋ ๊ทธ๋๋ก 8080๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ๋ค. [๊ฐ๋ฐ ์ค] ๋ธ๋ผ์ฐ์ โ localhost:3000 โ React ๊ฐ๋ฐ ์๋ฒ โ ์์ฒญ์ โ localhost:8080 โ Spring API ์๋ฒ [์ด์ ์ค] ๋ธ๋ผ์ฐ์ โ www.home.com (S3/Nginx) โ ์ ์ ํ์ผ(index.html ๋ฑ) โ ๋ธ๋ผ์ฐ์ ์์์ JS โ api.home.com (8080 ํฌํธ) โ Spring ์๋ฒ์ด๋ ๊ฒ ์ดํดํด๋ ๊ด์ฐฎ์๊น์?
- 0
- 3
- 451
Q&A
SpringBoot๋ก RDS ์ฐ๊ฒฐ ์๋ฌ
์ค๋ฅ๋ฅผ ํด๊ฒฐํ์ต๋๋ค!ํน์ EC2 ์ธ์คํด์ค๋ฅผ ํตํด SpringBoot๋ฅผ ๋ฐฐํฌํ์ฌ ํ ์คํธ๋ฅผ ํ์ง์๊ณ , ๋ก์ปฌ์์ ์คํ๋ง ๋ถํธ๋ก RDS๋ง ์ฐ๊ฒฐํด์ ๋ก์ปฌ ์๋ฒ์์ ๊ฐ๋จํ html์ ๋ง๋ค์ด ์ ์ ๊ฐ ์ ์ฅ๋ ์ ์๋๋ก ๋ก์ง์ ์์ฑํ ๋ค, ๊ฐ์ ๋ฃ์์ต๋๋ค.์ดํ ๋๋น๋ฒ์์ ์ ๋ฐ์์ผ๋ก ๊ฐ์ด ๋ค์ด์๋ค๋ฉด ์ ์ฐ๋๋์๋ค๊ณ ํ ์ ์์๊น์?(์ฌ์ง) (์ฌ์ง)
- 0
- 3
- 146
Q&A
@ExceptionHandler JSON ๋ฐํ
ํด๊ฒฐํ์ต๋๋น. getMember()๋ฉ์๋์์ ๋งค๊ฐ๋ณ์๋ก @RequestParam์ด ์๋ @PathVariable์ ๋ฐ์์ด์ผํ๋๋ฐ ์ ๋ ธํ ์ด์ ์ ์๋ชป ๋ฌ์์ ์ผ์ด๋ฌ๋ ์ค๋ฅ๋ค์ใ ..ใ
- 0
- 2
- 305
Q&A
V5 save์์ 500์ค๋ฅ
๋ชจ๋ ๊ฐ์ฌํฉ๋๋น..Map param = new HashMap(); private Map createParamMap(HttpServletRequest request) {Map paramMap = new HashMap();request.getParameterNames().asIterator().forEachRemaining(paramName -> paramMap.put(paramName, request.getParameter(paramName)));return paramMap;}createParamMap์ด๋ผ๋ ๋ฉ์๋๋ฅผ ๋ง๋ค์ด๋๊ณ Map param = createParamMap(request)๋ฅผ ํ์ด์ผํ๋๋ฐMap param = new HashMap();๋ผ๊ณ ํ์ฌ ๋ฐ์ดํฐ ๊ฐ์ด ์์ด์ ๋ ์ค๋ฅ์์ต๋๋ค..ใ ใ ํด๊ฒฐํ๋๋ฐ ๋ค๋ค ๋์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค
- 0
- 5
- 670




