๐Ÿ“š ์ตœ์ข… ์Šคํ”„๋ง ํ”„๋กœ์ ํŠธ: React์™€ ์—ฐ๋™ํ•˜๊ธฐ

jjyu_myยท2024๋…„ 12์›” 31์ผ
0

REACT

๋ชฉ๋ก ๋ณด๊ธฐ
5/5
post-thumbnail

React์™€ Spring ํ”„๋กœ์ ํŠธ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ณผ์ •์„ ๋‹จ๊ณ„๋ณ„๋กœ ์ •๋ฆฌํ•ด ๋ณด์•˜๋‹ค๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป


1๏ธโƒฃ Spring ์ปจํŠธ๋กค๋Ÿฌ ํŒŒ์ผ ์ƒ์„ฑ

โœ… ์ปจํŠธ๋กค๋Ÿฌ ํŒŒ์ผ ์ƒ์„ฑ

  • Spring ํ”„๋กœ์ ํŠธ์— React ๋ทฐ(ํ™”๋ฉด)์™€ ์—ฐ๊ฒฐํ•  ์ปจํŠธ๋กค๋Ÿฌ ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค.
  • ๐Ÿ“‚ src/main/java/com/example/controller์— ์ปจํŠธ๋กค๋Ÿฌ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜์„ธ์š”.

โœ… ํŒŒ์ผ ์ƒ์„ฑ ํ›„ ์ปจ๋“œ๋กค๋Ÿฌ ์ƒ์„ฑ

๐Ÿ’ก ์—ฌ๊ธฐ์„œ "dashboard"๋Š” ์ง๊ด€์ ์ธ ์ด๋ฆ„์œผ๋กœ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค


2๏ธโƒฃ React ํ”„๋กœ์ ํŠธ ์„ค์ • ๋ณ€๊ฒฝ

  • React ํ”„๋กœ์ ํŠธ์—์„œ package.json ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

โœ… ์ˆ˜์ • ๋‚ด์šฉ

  • package.json ์—์„œ proxy ์ œ๊ฑฐ ํ›„ "homepage": "dashboard", ์ถ”๊ฐ€

๐Ÿ’ก "dashboard"๋Š” Spring ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์„ค์ •ํ•œ ๋ทฐ ์ด๋ฆ„๊ณผ ๋™์ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


3๏ธโƒฃ React ์‹คํ–‰ ํ™•์ธ

โœ… yarn start ์‹คํ–‰

  • React ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•ด ํ™”๋ฉด์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค

๐Ÿ”Ž ์ฐธ๊ณ :

  • Spring์ด ๊ฐ€๋™๋˜๊ธฐ ์ „์ด๋ผ ๋ฐ์ดํ„ฐ(๊ทธ๋ž˜ํ”„ ๋“ฑ)๋Š” ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
  • ํ”„๋ก์‹œ๋ฅผ ์ œ๊ฑฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— API ํ˜ธ์ถœ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณด์ด์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

4๏ธโƒฃ React ๋นŒ๋“œ ๋ฐ ๊ฒฝ๋กœ ํ™•์ธ

โœ… yarn build ์‹คํ–‰

  • React ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค
  • ๋นŒ๋“œ ํ›„ ์ƒ์„ฑ๋œ build ํด๋” ํ™•์ธ
  • ๊ฒฝ๋กœํŒŒ์ผ ํ™•์ธ

5๏ธโƒฃ index.html ์ด๋ฆ„ ๋ณ€๊ฒฝ

  • ๋ฆฌ์—‘ํŠธ ๋นŒ๋“œ ํด๋”์•ˆ์— ๋นŒ๋“œ๋œ index.html ํŒŒ์ผ ์ด๋ฆ„์„ Spring ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์„ค์ •ํ•œ ์ด๋ฆ„๊ณผ ๋™์ผํ•˜๊ฒŒ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.(์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๋งž์ถ˜ ๋ทฐ ์ด๋ฆ„)

๐Ÿ”Ž ์ฐธ๊ณ :

  • ๋ณ€๊ฒฝ ์ „: index.html
  • ๋ณ€๊ฒฝ ํ›„: dashboard.html

6๏ธโƒฃ Spring ํ”„๋กœ์ ํŠธ์— React ํŒŒ์ผ ์ถ”๊ฐ€

  • React ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์„ Spring ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

โœ… ํŒŒ์ผ ๋ณต์‚ฌ ๊ฒฝ๋กœ

1. dashboard.html

๐Ÿ“‚ src/main/resources/templates์•ˆ์— ๋ฆฌ์—‘ํŠธ ๋นŒ๋“œ ํด๋”์— ์žˆ๋Š”  dashboard.html ๋ฅผ ์ถ”๊ฐ€

2. ๋‚˜๋จธ์ง€ ๋นŒ๋“œ ํŒŒ์ผ

๐Ÿ“‚ src/main/resources/static/์•ˆ์— dashboard ํด๋” ์ƒ์„ฑ ํ›„
 ๋ฆฌ์—‘ํŠธ ๋นŒ๋“œ ํด๋”์— ์•ˆ์— ์žˆ๋Š” html ๋นผ๊ณ  ์ „๋ถ€ ๋ณต์‚ฌ ํ›„ dashboardํด๋”์•ˆ์— ์ถ”๊ฐ€


7๏ธโƒฃ Spring ํ”„๋กœ์ ํŠธ ์‹คํ–‰

โœ… Spring ๊ฐ€๋™

๐ŸŽ‰ Spring ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด React ํ™”๋ฉด์ด ์ถœ๋ ฅ ๋˜๋Š”๊ฑธ ํ™•์ธ ํ• ์ˆ˜ ์žˆ๋‹ค!!


profile

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด