๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์Šคํ”„๋ง ๋ถ€ํŠธ ํ…Œ์ŠคํŠธ - ๋‚ด์žฅ ์„œ๋ฒ„ ๋žœ๋ค ํฌํŠธ๋กœ ๋„์šฐ๊ธฐ ์Šคํ”„๋ง ๋ถ€ํŠธ ํ…Œ์ŠคํŠธ - ๋‚ด์žฅ ์„œ๋ฒ„ ๋žœ๋ค ํฌํŠธ๋กœ ๋„์šฐ๊ธฐ ๐Ÿ‘‰ Dependency spring-boot 2.2.5.RELEASE junit 4.12 @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class WebtoonApiControllerTest { @LocalServerPort private int port; @Test public void printPort() throws Exception { System.out.println(port); assertNotEquals(port, 0); } @Autowired private TestRestTemplate.. 2020. 3. 24.
[IntelliJ] ์Šคํ”„๋ง ๋ถ€ํŠธ ์—†์ด ์Šคํ”„๋ง ์›น MVC ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ณ  ์„ค์ •ํ•˜๊ธฐ [IntelliJ] ์Šคํ”„๋ง ๋ถ€ํŠธ ์—†์ด ์Šคํ”„๋ง ์›น MVC ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ณ  ์„ค์ •ํ•˜๊ธฐ โ€ป ์‚ฌ์šฉ IDE : IntelliJ IDEA 2019.3 Ultimate 1. ์ƒˆ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ์‚ฌ์šฉํ•˜๋Š” ๋นŒ๋“œํˆด(Maven, Gradle) ๊ธฐ๋ฐ˜์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. 1) ์‚ฌ์šฉํ•  ๋นŒ๋“œํˆด ์„ ํƒ - ์ด ๊ธ€์—์„œ๋Š” Maven์„ ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 2) ์‚ฌ์šฉํ•  JDK ์„ ํƒ 3) Next ํด๋ฆญ ํ”„๋กœ์ ํŠธ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Finish๋ฅผ ํด๋ฆญํ•ด์„œ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์„ ์™„๋ฃŒํ•œ๋‹ค. 2. ํ”„๋กœ์ ํŠธ ์„ธํŒ… 1. Java Compiler ๋ฒ„์ „ ๋ณ€๊ฒฝ 2. ํ”„๋กœ์ ํŠธ์— Web Facet ์ถ”๊ฐ€ 3. war packaging ์„ค์ • Maven ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ๊ธฐ๋ณธ Java Compiler ๋ฒ„์ „์ด 1.5๋กœ ๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋‹ค. S.. 2020. 3. 17.
Servlet์—์„œ ์Šคํ”„๋ง ApplicationContext ์‚ฌ์šฉํ•˜๊ธฐ Servlet์—์„œ ์Šคํ”„๋ง ApplicationContext ์‚ฌ์šฉํ•˜๊ธฐ pom.xml org.springframework spring-webmvc 5.1.3.RELEASE ์Šคํ”„๋ง ApplicationContext, ์ฆ‰ ์Šคํ”„๋ง IoC๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๊ด€๋ จ ์˜์กด์„ฑ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค. spring-context ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋„๋ก ์˜์กด์„ฑ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. ์œ„ ์˜ˆ์ œ์—์„œ๋Š” spring-webmvc๋ฅผ ๊ฐ€์ ธ์˜ค๋„๋ก ํ–ˆ์ง€๋งŒ spring-context๋งŒ ๊ฐ€์ ธ์™€๋„ ๋œ๋‹ค. web.xml org.springframework.web.context.ContextLoaderListener contextClass org.springframework.web.context.support.AnnotationConfigWebApplication.. 2020. 3. 11.
์Šคํ”„๋ง ๋ถ€ํŠธ์˜ ์˜์กด์„ฑ ๊ด€๋ฆฌ(Dependency Management) ์Šคํ”„๋ง ๋ถ€ํŠธ์˜ ์˜์กด์„ฑ ๊ด€๋ฆฌ(Dependency Management) ๊ธฐ๋ณธ์ ์ธ ์Šคํ”„๋ง ๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ์˜ pom.xml ํŒŒ์ผ์„ ๋ณด๋ฉด ์˜์กด์„ฑ ์„ค์ •์ด spring-boot-starter-web๊ณผ spring-boot-starter-test ๋‘ ๊ฐœ ๋ฟ์ด๊ณ  ๋ฒ„์ „ ๋˜ํ•œ ๋ช…์‹œํ•˜์ง€ ์•Š๊ณ  ์žˆ์ง€๋งŒ ์ˆ˜ ๋งŽ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์„ ์•Œ์•„์„œ ๊ฐ€์ ธ์˜จ๋‹ค. org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” ์Šคํ”„๋ง ๋ถ€ํŠธ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์˜์กด์„ฑ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ๋•Œ๋ฌธ์ด๋‹ค. ๊ธฐ๋ณธ ์Šคํ”„๋ง ๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ๋Š” spring-boot-starter-.. 2020. 3. 11.
์Šคํ”„๋ง ๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ - Spring Initializr ์›น ๋„๊ตฌ ์‚ฌ์šฉ ์Šคํ”„๋ง ๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ - Spring Initializr ์›น ๋„๊ตฌ ์‚ฌ์šฉ ์Šคํ”„๋ง ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ• ์ค‘์—๋Š” Spring์—์„œ ์ œ๊ณตํ•˜๋Š” Spring Initializr ์›น ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ„ํŽธํ•œ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. https://start.spring.io/ ์— ์ ‘์†ํ•˜์ž. ์œ„ ์ฃผ์†Œ๋กœ ๋“ค์–ด๊ฐ€๋ฉด ์ด๋Ÿฐ ํ™”๋ฉด์ด ๋ณด์ผ๊ฒƒ์ด๋‹ค. ์‹œ๊ฐ„์ด ํ๋ฆ„์— ๋”ฐ๋ผ UI๋Š” ๋ฐ”๋€” ์ˆ˜ ์žˆ๋‹ค. ์„ ํƒํ•ด์•ผํ•˜๋Š” ์˜ต์…˜์€ ์ฐจ๋ก€๋กœ, Project: ์‚ฌ์šฉํ•  ๋นŒ๋“œ ํˆด ์„ ํƒ (Maven/Gradle) Maven, Gradle์€ ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ์˜์กด์„ฑ์„ ๊ด€๋ฆฌํ•˜๊ณ  ๋นŒ๋“œ ๋ผ์ดํ”„์‚ฌ์ดํด์„ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ํˆด์ด๋‹ค. ๊ณผ๊ฑฐ์—๋Š” Maven์„, ์ตœ๊ทผ์—๋Š” Gradle์„ ์‚ฌ์šฉํ•˜๋Š” ์ถ”์„ธ์ด๋‹ค. ์Šคํ”„๋ง ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ด€๋ฆฌ ์ž์ฒด๋„ ์ตœ๊ทผ์—๋Š” Gradle๋กœ ํ•˜๊ณ  ์žˆ๋‹ค. Language: ์–ธ์–ด .. 2020. 3. 11.
[Spring] SpEL - Spring Expression Language [Spring] SpEL - Spring Expression Language SpEL(Spring Expression Language)๋ž€? Spring expression language๋Š” ๋ณดํ†ต SpEL๋กœ ํ‘œ๊ธฐํ•˜๋ฉฐ ๊ตฌ๋‘๋กœ๋Š” ์Šคํ”„๋ง EL์ด๋ผ๊ณ  ์ง€์นญํ•œ๋‹ค. SpEL์€ ๋ณดํ†ต ๊ฐ์ฒด๋ฅผ ์กฐํšŒํ•˜๊ณ  ์กฐ์ž‘ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ Unified EL๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ, ๋ฌธ์ž์—ด ํ…œํ”Œ๋ฆฟ ๊ธฐ๋Šฅ ๋“ฑ์˜ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ํ‘œํ˜„์‹ ์–ธ์–ด์ด๋‹ค. OGNL, MVEL, JBoss EL ๋“ฑ ์ž๋ฐ”์—์„œ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ์—ฌ๋Ÿฌ EL์ด ์žˆ์ง€๋งŒ SpEL์€ Spring ํ”„๋กœ์ ํŠธ ์ „๋ฐ˜์— ๊ฑธ์ณ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ์œผ๋ฉฐ ์Šคํ”„๋ง 3.0๋ถ€ํ„ฐ ์ง€์›๋œ๋‹ค. SpEL ํ‘œ๊ธฐ๋ฒ• #{ SpELํ‘œํ˜„์‹ } JSP์—์„œ EL์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ๊บผ๋‚ผ๋•Œ ${ } ์ด.. 2020. 3. 7.
[Spring] ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ - PropertyEditor, Converter ๊ทธ๋ฆฌ๊ณ  Formatter [Spring] ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ - PropertyEditor, Converter ๊ทธ๋ฆฌ๊ณ  Formatter 1. Data Binding(๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ)์˜ ์ •์˜ ๐Ÿ“ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ์›น์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•˜์—ฌ ์ „๋‹ฌ๋˜๋Š” ๊ฐ’์€ ์ฃผ๋กœ ๋ฌธ์ž์—ด์ด๋ฉฐ, ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์ด ๋ฌธ์ž์—ด์„ ๋„๋ฉ”์ธ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ ํƒ€์ž…(int, date, boolean, ... ๋˜๋Š” ๋„๋ฉ”์ธ ๊ฐ์ฒด ํƒ€์ž… ๊ทธ ์ž์ฒด)์œผ๋กœ ๋ณ€ํ™˜์ด ํ•„์š”ํ•˜๋‹ค. ์ด๋ ‡๊ฒŒ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฌธ์ž์—ด ๊ฐ’์„ ํ”„๋กœํผํ‹ฐ ํƒ€์ž…์— ๋งž์ถฐ ๋ณ€ํ™˜ํ•˜์—ฌ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์„ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์ด๋ผ ํ•œ๋‹ค. 2. Spring์˜ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ Spring์€ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ๊ธฐ๋Šฅ์„ ์—ฌ๋Ÿฌ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์ถ”์ƒํ™”ํ•˜์—ฌ ์ œ๊ณตํ•œ๋‹ค. ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ฃผ๋กœ ์›น MVC์—์„œ ์‚ฌ์šฉํ•˜์ง€๋งŒ web์— ๊ตญํ•œ๋˜์–ด ํŠนํ™”๋œ ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ณณ.. 2020. 3. 6.
[Spring] Validation ์ถ”์ƒํ™” [Spring] Validation ์ถ”์ƒํ™” org.springframework.validation.Validator๋Š” spring์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฐ์ฒด ๊ฒ€์ฆ์šฉ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. ์ฃผ๋กœ spring mvc์—์„œ ์‚ฌ์šฉํ•˜์ง€๋งŒ web ๊ณ„์ธต ์ „์šฉ ๊ฐœ๋…์€ ์•„๋‹ˆ๋ฉฐ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค. Validator๋Š” Java EE ํ‘œ์ค€ ์ŠคํŽ™ ์ค‘ ํ•˜๋‚˜์ธ Bean Validation์„ ์ง€์›ํ•˜์—ฌ Bean Validation์ด ์ œ๊ณตํ•˜๋Š” ์—ฌ๋Ÿฌ ์• ๋…ธํ…Œ์ด์…˜๋“ค์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋‹ค. 1. Validator ์ธํ„ฐํŽ˜์ด์Šค Validator ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” ๋‘ ๊ฐ€์ง€ ๋ฉ”์†Œ๋“œ๊ฐ€ ์ •์˜๋˜์–ด์žˆ๋‹ค. 1 2 3 4 5 6 boolean supports(Class clazz) { // ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฒ€์ฆ ๋Œ€์ƒ ํƒ€์ž…์ธ์ง€ ํ™•์ธ } void validate.. 2020. 3. 5.
[Spring] Resource ์ถ”์ƒํ™” [Spring] Resource ์ถ”์ƒํ™” Spring์€ java.net.URL์„ org.springframework.core.io.Resource๋กœ ๊ฐ์‹ธ์„œ ์ถ”์ƒํ™”ํ•œ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฆฌ์†Œ์Šค ์ž์ฒด๋ฅผ ์ถ”์ƒํ™” ํ•œ๊ฒƒ์ธ๋ฐ spring์—์„œ ์ด๋ฅผ ์ถ”์ƒํ™”ํ•œ ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. java.net.URL์€ http, https, ftp๋Š” ์ง€์›ํ•˜์ง€๋งŒ classpath๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ์ด ์—†๋‹ค. ServletContext๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ƒ๋Œ€ ๊ฒฝ๋กœ๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ์ด ์—†๋‹ค. ์ƒˆ๋กœ์šด ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๋“ฑ๋กํ•˜์—ฌ URL ์ ‘๋ฏธ์‚ฌ๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ• ์ˆ˜๋Š” ์žˆ์ง€๋งŒ ๊ตฌํ˜„์ด ๋ณต์žกํ•˜๊ณ  ํŽธ์˜์„ฑ ๋ฉ”์†Œ๋“œ๊ฐ€ ๋ถ€์กฑํ•˜๋‹ค. Spring์€ ๋ฆฌ์†Œ์Šค๋ฅผ ์ถ”์ƒํ™”ํ•˜์—ฌ ๋ฆฌ์†Œ์Šค๋ฅผ ๋‹ค๋ฃจ๋Š”๋ฐ ์žˆ์–ด ํ•˜๋‚˜์˜ ํ†ต์ผ๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. 1. S.. 2020. 3. 5.
[Spring] ResourceLoader๋กœ ํ…์ŠคํŠธ ํŒŒ์ผ ์ถœ๋ ฅํ•˜๊ธฐ (Java 11) [Spring] ResourceLoader๋กœ ํ…์ŠคํŠธ ํŒŒ์ผ ์ถœ๋ ฅํ•˜๊ธฐ (Java 11) Spring์˜ ApplicationContext๋Š” ResourceLoader๋ผ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ƒ์†ํ•œ๋‹ค. ์ด ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ด๋ฆ„์—์„œ๋ถ€ํ„ฐ ์•Œ ์ˆ˜ ์žˆ๋“ฏ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฝ์–ด์˜ค๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. 1. Resource ๊ฐ์ฒด ์–ป๊ธฐ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.sprin.. 2020. 3. 5.
[Spring] ApplicationEventPublisher๋ฅผ ์ด์šฉํ•œ ์ด๋ฒคํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ [Spring] ApplicationEventPublisher๋ฅผ ์ด์šฉํ•œ ์ด๋ฒคํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ApplicationEventPublisher๋Š” Spring์˜ ApplicationContext๊ฐ€ ์ƒ์†ํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค ์ค‘ ํ•˜๋‚˜์ด๋‹ค. ์˜ต์ €๋ฒ„ ํŒจํ„ด์˜ ๊ตฌํ˜„์ฒด๋กœ ์ด๋ฒคํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ด์ค€๋‹ค. 1. ApplicationEvent๋ฅผ ์ƒ์†ํ•˜๋Š” ์ด๋ฒคํŠธ ํด๋ž˜์Šค ๋งŒ๋“ค๊ธฐ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import org.springframework.context.ApplicationEvent; public class MyEvent extends ApplicationEvent { private int data; public MyEvent(Object source) .. 2020. 3. 5.
[Spring] Spring ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฉ”์‹œ์ง€ ๋‹ค๊ตญ์–ด ๋ฐ ์žฌ๋กœ๋”ฉ ์ฒ˜๋ฆฌ [Spring] Spring ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฉ”์‹œ์ง€ ๋‹ค๊ตญ์–ด ๋ฐ ์žฌ๋กœ๋”ฉ ์ฒ˜๋ฆฌ Spring IoC ์ปจํ…Œ์ด๋„ˆ = ApplicationContext๊ฐ€ ๊ฐ–๊ณ ์žˆ๋Š” ๊ธฐ๋Šฅ ์ค‘ MessageSource๋Š” ๊ตญ์ œํ™”(i18n)์™€ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ด์ฃผ๋Š”๋ฐ ์ด๋ฅผ ์ด์šฉํ•ด์„œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ถœ๋ ฅํ•˜๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ๋‹ค๊ตญํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ๋ฉ”์‹œ์ง€ ํŒŒ์ผ ์ž‘์„ฑ resources ๋””๋ ‰ํ† ๋ฆฌ ์•„๋ž˜์— messages.properties, messages_ko_KR.properties ํŒŒ์ผ์„ ์ƒˆ๋กœ ์ƒ์„ฑํ•œ๋‹ค. ์—ฌ๊ธฐ์— ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ถœ๋ ฅํ•  ๋ฉ”์‹œ์ง€๋ฅผ messages.properties์—๋Š” ์˜์–ด๋กœ, messages_ko_KR.proeprties์—๋Š” ํ•œ๊ตญ์–ด๋กœ ์ž‘์„ฑํ•  ๊ฒƒ์ด๋‹ค. ํŒŒ์ผ๋ช…์— ์˜คํƒ€๊ฐ€ ๋‚˜์ง€ ์•Š๋„๋ก ์กฐ์‹ฌํ•˜์ž. ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ๋‚˜๋ฉด ์ž๋™์œผ๋กœ 'messages.. 2020. 3. 4.