Spring Boot ๐ŸŒผ ๊ตฌ๋™ ๋ฐ ํ…Œ์ŠคํŠธ

Doridamยท2023๋…„ 6์›” 1์ผ
0

Spring๐ŸŒฑ & Boot ๐ŸŒผ

๋ชฉ๋ก ๋ณด๊ธฐ
5/12


์ด์ „ ํฌ์ŠคํŠธ์—์„œ Spring Boot์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ์•Œ์•„๋ดค๋‹ค.

์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” Spring Boot๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ณผ์ •๊ณผ ํ…Œ์ŠคํŠธ๋ฅผ ์•Œ์•„๋ณธ๋‹ค.

Spring Boot ์‹คํ–‰

๋จผ์ € ์ƒ์„ฑ๋œ Spring Boot ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์กฐ๋ฅผ ๋ณด๋ฉด

์ด๋Ÿฌํ•œ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

.gradle, .idea, gradle ํด๋”์˜ ๊ฒฝ์šฐ build tool๊ณผ ide ์„ค์ •์ด๋ฏ€๋กœ ํ˜„ ํฌ์ŠคํŠธ์—์„œ๋Š” ๋‹ค๋ฃจ์ง€ ์•Š์„ ์˜ˆ์ •์ด๋‹ค.

src ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์—ด์–ด๋ณด๋ฉด src/java, src/resource ์ด๋ ‡๊ฒŒ ๋‘๊ฐœ์˜ ํŒจํ‚ค์ง€๊ฐ€ ๋‚˜์˜ค๋Š”๋ฐ ์ด๊ณณ์ด ์‹ค์ œ๋กœ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ ๋ฐ resource๊ฐ€ ์ €์žฅ๋˜๋Š” ๊ณณ์ด๋‹ค.

src/java ํ•˜์œ„ ํด๋”๋ฅผ ๋ณด๋ฉด ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์‹œ ์ง€์ •ํ–ˆ๋˜ ํŒจํ‚ค์ง€๋ช…์œผ๋กœ ์ง€์ •๋˜์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.
ํ•ด๋‹น ํŒจํ‚ค์ง€๊ฐ€ ์ตœ์ƒ์œ„ ํŒจํ‚ค์ง€์ด๊ณ , ๊ทธ ์•ˆ์— Demo1Application์€ Spring Boot์˜ ์‹คํ–‰ main method๊ฐ€ ๊ตฌํ˜„๋˜์–ด ์žˆ๋Š” ํด๋ž˜์Šค์ด๋‹ค.

์ž๋™์œผ๋กœ ์ƒ์„ฑ๋œ Demo1Applicaiton class์˜ ๋‚ด๋ถ€์ด๋‹ค.

@SpringBootApplication ์–ด๋…ธํ…Œ์ด์…˜์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , main ๋ฉ”์†Œ๋“œ ์•ˆ์—๋Š” SpringApplication.run ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

@SpringBootApplication ๋‚ด๋ถ€์—๋Š” ์„ค์ •์„ ์ž๋™์œผ๋กœ ํ•˜๋Š” @EnableAutoConfiguration ๊ณผ ํ•˜์œ„ ํŒจํ‚ค์ง€๋ฅผ ์Šค์บ”ํ•˜์—ฌ Bean ๋“ฑ๋ก์„ ํ•˜๋Š” @ComponentScan, ์„ค์ •ํŒŒ์ผ์ž„์„ ์•Œ๋ฆฌ๋Š” @SpringBootConfiguration 3๊ฐœ์˜ ์–ด๋…ธํ…Œ์ด์…˜์ด ์žˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ์‹คํ–‰์‹œ @EnableAutoConfiguration์œผ๋กœ ์ธํ•ด ์ž๋™์œผ๋กœ ์„ค์ •์ด ์™„๋ฃŒ๋˜๋ฉฐ, ํ•˜์œ„ ํŒจํ‚ค์ง€๋ฅผ ์Šค์บ”ํ•˜์—ฌ @Component๋‚˜ streoType (@Controller, @Service, @Repository, ...) ์™€ ๊ฐ™์€ ์–ด๋…ธํ…Œ์ด์…˜์ด ๋ถ™์–ด์žˆ๋Š” ํด๋ž˜์Šค๋“ค์„ Bean ๋“ฑ๋ก ํ•œ๋‹ค.

์‹คํ–‰์ฝ˜์†”์—๋Š” ์ด์™€ ๊ฐ™์€ ๋กœ๊ทธ๊ฐ€ ๋‚˜์˜ค๋Š”๋ฐ dependency๋กœ ์ถ”๊ฐ€๋œ Tomcat์ด ์‹คํ–‰๋˜๋ฉฐ ์„œ๋ฒ„๊ฐ€ ์˜ฌ๋ผ๊ฐ€๋Š” ๋ชจ์Šต์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๊ธฐ๋ณธ ํฌํŠธ๋Š” 8080์ด๊ณ  ๋งŒ์•ฝ ํฌํŠธ๊ฐ€ ์‚ฌ์šฉ์ค‘์ด๋ผ๋ฉด src/resources ํ•˜์œ„ application.properties์—

๊ฐ„๋‹จํ•œ ์„ค์ •์„ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ•˜๋Š”๊ฒƒ์œผ๋กœ ํฌํŠธ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค.


DB๊ด€๋ จ dependency๋ฅผ ์ถ”๊ฐ€ํ•œ ๊ฒฝ์šฐ ์‹คํ–‰์ด ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.

@SpringBootApplication์ด ์‹คํ–‰๋˜๋ฉฐ DB์™€์˜ ์—ฐ๊ฒฐ์„ ์ฒดํฌํ•˜๊ธฐ ๋•Œ๋ฌธ์ธ๋ฐ,

ํ•ด๋‹น ํ•˜๋Š” ๊ฒฝ์šฐ application.properties์— DB ์„ค์ •์„ ์ถ”๊ฐ€ํ•œ๋‹ค.

spring.datasource.url=DB url
spring.datasource.driver-class-name=driver
spring.datasource.username=username
spring.datasource.password=password

์‚ฌ์šฉ์ค‘์ธ DB์— ๋”ฐ๋ผ ์„ค์ •์„ ์™„๋ฃŒํ•˜๊ณ  ์‹คํ–‰ํ•œ๋‹ค.

profile
๋„๋ฆฌ๋„๋ฆฌ๋‹ด๋‹ด ๐Ÿค๐Ÿฅ๐Ÿค๐Ÿฅ๐Ÿฃ๐Ÿฃ

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