๊ด€๋ฆฌ ๋ฉ”๋‰ด

ruriruriya

[Spring Boot]์ž๋ฐ” ์Šคํ”„๋ง๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ ํ™˜๊ฒฝ ์„ค์ •(์ŠคํŠธ๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ) ๋ณธ๋ฌธ

๐Ÿ–Œ๏ธWeb/Spring Boot

[Spring Boot]์ž๋ฐ” ์Šคํ”„๋ง๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ ํ™˜๊ฒฝ ์„ค์ •(์ŠคํŠธ๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ)

๋ฃจ๋ฆฌ์•ผใ…‘ 2024. 3. 4. 16:12
๋ฐ˜์‘ํ˜•

์ž๋ฐ” ์Šคํ”„๋ง(Spring)์€ ์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค.
์ฃผ๋กœ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ๋Œ€๊ทœ๋ชจ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.
์Šคํ”„๋ง์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฐ ๋ถ€๋ถ„์„ ์‰ฝ๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋„๋ก
์ข…์†์„ฑ ์ฃผ์ž…(Dependency Injection)๊ณผ ๊ฐ™์€ ๊ธฐ์ˆ ์„ ์ œ๊ณตํ•œ๋‹ค.
์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ์˜ ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ”๊ณ , ์œ ์ง€ ๋ณด์ˆ˜์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.
๋˜ํ•œ, ์Šคํ”„๋ง ๋ถ€ํŠธ(Spring Boot) ๊ฐ™์€ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์ •์„ ๊ฐ„์†Œํ™”ํ•˜๊ณ ,
๋น ๋ฅด๊ฒŒ ํ”„๋กœํ† ํƒ€์ž…์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

00. ์‚ฌ์ „ ์ž‘์—…

- Java 17 ์ด์ƒ ์„ค์น˜

- IDE : IntelliJ or Eclipse ์„ค์น˜

* ์Šคํ”„๋ง๋ถ€ํŠธ 3.0 ์ด์ƒ์€ JDK 17 ์ด์ƒ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

01. ์Šคํ”„๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ๋กœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

์ŠคํŠธ๋ง ๋ถ€ํŠธ ์Šคํƒ€ํ„ฐ๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ์Šคํ”„๋ง ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
https://start.spring.io/

- ํ”„๋กœ์ ํŠธ ์„ ํƒ

Project : Gradle - Groovy Project
Spring Boot : 3.x.x
Language : Jar
Java : 21 or 17

- Project Metadata

groupId : hello(๋ณดํ†ต ๊ธฐ์—…(๋„๋ฉ”์ธ)๋ช… ๊ฐ™์€ ๊ฒƒ์„ ๋„ฃ์Œ)
artifactId : hello-spring(๋นŒ๋“œ ํ›„ ๊ฒฐ๊ณผ๋ฌผ ์ด๋ฆ„)

- Dependencies

Spring Web
Thymeleaf

 

์„ ํƒ ํ›„ GENERATE๋ฅผ ํด๋ฆญํ•˜๋ฉด ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

 

์ƒ์„ฑ๋œ ํ”„๋กœ์ ํŠธ๋ฅผ ์••์ถ• ํ’€๊ณ  ๋ฐ”ํƒ•ํ™”๋ฉด์— study ํด๋” ์•ˆ์— ๋„ฃ์–ด์ฃผ์—ˆ๋‹ค.

 

02. Java์—์„œ ํ”„๋กœ์ ํŠธ ์˜คํ”ˆ

 

build.gradle ์„ค์ •์„ ํ™•์ธํ•œ๋‹ค.
๋”ฑํžˆ ๋ณ€๊ฒฝ๋œ ๊ฒƒ์€ ์—†์ง€๋งŒ ์ถ”ํ›„์— ๊ณ„์† ๋ฒ„์ „์— ์—…๊ทธ๋ ˆ์ด๋“œ ๋˜๊ธฐ ๋•Œ๋ฌธ์—
์ฐจ์ด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.

 

03. Main์—์„œ ์‹คํ–‰ํ•˜์—ฌ ์„ธํŒ… ํ™•์ธ

Main ํ•จ์ˆ˜ ์™ผ์ชฝ์— Run ๋ฒ„ํŠผ์„ ํด๋ฆญํ•œ๋‹ค.

 

๊ทธ๋Ÿฌ๋ฉด ํ„ฐ๋ฏธ๋„์— ์Šคํ”„๋ง ๋ถ€ํŠธ ๋ฒ„์ „์ด ๋‚˜์˜จ๋‹ค.

์•„๋ž˜ tomcat started ... 8080์ด ๋‚˜์˜จ๋‹ค.

 

์›น๋ธŒ๋ผ์šฐ์ €์— localhost:8080 ์œผ๋กœ ์ž˜ ๋œจ๋Š” ์ง€ ํ™•์ธํ•œ๋‹ค.

์—๋Ÿฌ๋ผ๊ณ  ๋œจ์ง€๋งŒ ์ •์ƒ์ž‘๋™์ด ๋งž๋‹ค.
์‹คํ–‰์„ ์ค‘์ง€ํ•˜๋ฉด ์ ‘์†์กฐ์ฐจ ํ•  ์ˆ˜ ์—†๋‹ค.

์ด๋ ‡๊ฒŒ ๋‚˜์˜ค๋ฉด ํ™˜๊ฒฝ ์„ค์ •์ด ๋๋‚œ๋‹ค.

 

04. ๋” ๋น ๋ฅด๊ฒŒ ์‹คํ–‰ํ•ด๋ณด๊ธฐ

๋ฒˆ์™ธ.
์š”์ฆ˜ ๋นŒ๋“œ๊ฐ€ ์ž๋ฐ”๋ฅผ ์ง์ ‘ ์‹คํ–‰ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ
Gradle์„ ํ†ตํ•ด ์‹คํ–‰ํ•˜๋ฉด ๋Š๋ฆฌ๊ฒŒ ์‹คํ–‰๋  ๋•Œ๊ฐ€ ์žˆ๋Š”๋ฐ

์ด๋ ‡๊ฒŒ ์„ค์ •ํ•ด์ฃผ๋ฉด
IntelliJ์—์„œ ๋ฐ”๋กœ ์ž๋ฐ”๋กœ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋” ๋นจ๋ผ์ง„๋‹ค.

๋ฐ˜์‘ํ˜•