๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Spring

[Spring] ์Šคํ”„๋ง ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ PetClinic ๋นŒ๋“œ ๋ฐ ์‹คํ–‰ํ•˜๊ธฐ

by Leica 2020. 2. 27.
๋ฐ˜์‘ํ˜•

[Spring] ์Šคํ”„๋ง ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ PetClinic ๋นŒ๋“œ ๋ฐ ์‹คํ–‰ํ•˜๊ธฐ

1. GitHub์—์„œ Spring ํ”„๋กœ์ ํŠธ clone ๋ฐ›๊ธฐ

Spring์˜ ๊ณต์‹ ์˜ˆ์ œ์ธ spring-petclinic์„ ์‚ฌ์šฉํ•œ๋‹ค.

Clone๋ฐ›๊ธฐ ์œ„ํ•ด https://github.com/spring-projects/spring-petclinic ์— ์ ‘์†ํ•œ๋‹ค.

 

Clone or download๋ฅผ ํด๋ฆญํ•˜๊ณ  ํด๋ฆฝ๋ณด๋“œ์— ์นดํ”ผํ•˜๋Š” ๋ฒ„ํŠผ์„ ํด๋ฆญํ•œ๋‹ค.

 

IntelliJ ๋ฉ”์ธ ๋ฉ”๋‰ด์—์„œ VCS - Get from Version Control...์„ ํด๋ฆญํ•œ๋‹ค.

 

๋ณต์‚ฌํ•œ github url์„ ์ž…๋ ฅํ•œ๋‹ค.

๋””๋ ‰ํ† ๋ฆฌ๋Š” ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ ์ด๋ฆ„์ธ spring-petclinic์œผ๋กœ ์ž๋™์œผ๋กœ ์ง€์ •๋œ๋‹ค.

๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋ฉด ๋ณ€๊ฒฝ ํ›„ Clone์„ ํด๋ฆญํ•œ๋‹ค.

 

spring-petclinic์„ clone๋ฐ›์œผ๋ฉด readme.md ํŒŒ์ผ์ด ๋ฐ”๋กœ ์—ด๋ฆฐ๋‹ค.

Background task์—์„œ maven ๊ด€๋ จ ์ž‘์—…์ด ์ง„ํ–‰๋œ๋‹ค.

ํŠน๋ณ„ํžˆ ํ• ๊ฑด ์—†๊ณ  ์™„๋ฃŒ๋ ๋•Œ๊นŒ์ง€ ์ž ์‹œ ๊ธฐ๋‹ค๋ฆฐ๋‹ค.

 

์šฐ์ธก์˜ Maven์„ ํด๋ฆญํ•ด์„œ maven view๋ฅผ ์—ด์–ด๋ณด๋ฉด ์˜์กด์„ฑ์ด ๋ฐ›์•„์ง„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

2. ํ”„๋กœ์ ํŠธ Build

Terminal ๋ทฐ๋ฅผ ์—ด๋ฉด ํ˜„์žฌ ํ”„๋กœ์ ํŠธ์˜ ๋””๋ ‰ํ† ๋ฆฌ ์œ„์น˜์—์„œ ํ„ฐ๋ฏธ๋„์ด ์—ด๋ฆฐ๋‹ค.

ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•ด ํ„ฐ๋ฏธ๋„์— mvnw package ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

 

Build๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค.

 

3. ํ”„๋กœ์ ํŠธ ์‹คํ–‰

ํ”„๋กœ์ ํŠธ ์‹คํ–‰ ๋ฐฉ๋ฒ•์€ terminal์— ์ง์ ‘ ์ž๋ฐ” ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์„œ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ IntelliJ์˜ java application ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

๋ฌด์Šจ ์‹คํ–‰ ๋ฐฉ๋ฒ•์„ ํƒํ•˜๋“  ์‹คํ–‰ ์ „์— maven packaging์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•ด์•ผ ํ•œ๋‹ค.

 

1) Terminal์— java ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์„œ ์‹คํ–‰

ํ„ฐ๋ฏธ๋„์— java -jar target/*.jar ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

 

Maven์˜ package ๋นŒ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•ด์„œ ํŒจํ‚ค์ง€ ํŒŒ์ผ์„ ๋งŒ๋“ ๋‹ค.

๊ทธ๋ฆฌ๊ณ  pom.xml์„ ์—ด์–ด๋ณด๋ฉด ์ด ํ”„๋กœ์ ํŠธ๋Š” 'jar' ํ”„๋กœ์ ํŠธ์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

 

pom.xml์˜ <project> ํ•˜์œ„์— <packaging>์„ ๋ณ„๋„๋กœ ์ง€์ •ํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ๊ทธ ํ”„๋กœ์ ํŠธ๋Š” jar ํ”„๋กœ์ ํŠธ์ด๋‹ค.

 

Build ๋กœ๊ทธ์—์„œ jar ํŒŒ์ผ๋ช…๊ณผ ์œ„์น˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

2) IntelliJ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ด์šฉํ•œ ๋ฐฉ๋ฒ•

src/main/java/PetClinicApplication.java ํด๋ž˜์Šค๋ฅผ ์—ด๊ณ  ๋ฉ”์ธ ๋ฉ”์†Œ๋“œ ์ขŒ์ธก ๋…น์ƒ‰ ํ™”์‚ดํ‘œ๋ฅผ ํด๋ฆญํ•˜๊ฑฐ๋‚˜

์ƒ๋‹จ PetClinicApplication ์‹คํ–‰ ํ™˜๊ฒฝ ์šฐ์ธก ๋…น์ƒ‰ ํ™”์‚ดํ‘œ๋ฅผ ํด๋ฆญํ•˜๊ฑฐ๋‚˜

์œˆ๋„์šฐ ๊ธฐ์ค€ ๋‹จ์ถ•ํ‚ค Ctrl + Shift + F10์„ ๋ˆ„๋ฅธ๋‹ค.


Terminal์—์„œ ์‹คํ–‰ํ–ˆ์„ ๊ฒฝ์šฐ

 

IntelliJ ์‹คํ–‰ ํ™˜๊ฒฝ์œผ๋กœ ์‹คํ–‰ํ–ˆ์„ ๊ฒฝ์šฐ(์–ด๋–ป๊ฒŒ ์‹คํ–‰ํ•˜๋“  ๊ฒฐ๊ณผ๋Š” ๋™์ผํ•˜๋‹ค)

 

์‹คํ–‰์ด ์ •์ƒ์ ์œผ๋กœ ๋˜๋ฉด ๋กœ๊ทธ์—์„œ Tomcat์ด 8080ํฌํŠธ๋กœ ์‹คํ–‰๋๋‹ค๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์›น๋ธŒ๋ผ์šฐ์ €์—์„œ localhost:8080์œผ๋กœ ์ ‘์†ํ•ด์„œ ํ™•์ธํ•ด๋ณด์ž.

 

Spring pet clinic ํ”„๋กœ์ ํŠธ์˜ ์‹คํ–‰ ํ™”๋ฉด์€ ์œ„์™€ ๊ฐ™๋‹ค. (๊ฐฑ์–ผ์ฅ ๋„ˆ๋ฌด ๊ท€์—ฌ์›€ ๐Ÿ˜š๐Ÿ˜ญ)

 

References

์ธํ”„๋Ÿฐ - ๋ฐฑ๊ธฐ์„ ๋‹˜์˜ ์˜ˆ์ œ๋กœ ๋ฐฐ์šฐ๋Š” ์Šคํ”„๋ง ์ž…๋ฌธ(๊ฐœ์ •ํŒ)์„ ์ˆ˜๊ฐ•ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ํฌ์ŠคํŒ…์ž…๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€