๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[Spring] ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ ์ž‘์„ฑ ๋ฐฉ๋ฒ• ์ •๋ฆฌ [Spring] ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ ์ž‘์„ฑ ๋ฐฉ๋ฒ• ์ •๋ฆฌ ๐Ÿ“„ ๋ชฉ์ฐจ 1. ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ ํฌ๋งท - ๊ธฐ๋ณธ ํฌ๋งท - ์• ๋…ธํ…Œ์ด์…˜ ์„ค์ •์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ํฌ๋งท 2. ๋นˆ(Bean) ์„ค์ • ์˜ˆ์‹œ - ์ž๋™ ์ฃผ์ž… ์„ค์ • - autowire ์†์„ฑ 3. DI(Dependency Injection) ์„ค์ • - ์ƒ์„ฑ์ž ์ฃผ์ž… - ํ”„๋กœํผํ‹ฐ ์ฃผ์ž… - ํ”„๋กœํผํ‹ฐ ์ฃผ์ž… - List ํƒ€์ž… - ํ”„๋กœํผํ‹ฐ ์ฃผ์ž… - Set ํƒ€์ž… - ํ”„๋กœํผํ‹ฐ ์ฃผ์ž… - Map ํƒ€์ž… - ํ”„๋กœํผํ‹ฐ ์ฃผ์ž… - Properties ํƒ€์ž… 4. ApplicationContext ๊ฐ์ฒด ์ƒ์„ฑ - ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ์ด ํ•œ ๊ฐœ์ธ ๊ฒฝ์šฐ - ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ - ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ์ผ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ(import ํƒœ๊ทธ ์‚ฌ์šฉ) 1. ์Šคํ”„๋ง XML ์„ค์ • ํŒŒ.. 2020. 4. 13.
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.
[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] 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.
[Spring] EnvironmentCapable - Property ์‚ฌ์šฉํ•˜๊ธฐ ๊ด€๋ จ ๊ธ€ - JAVA ์›น ํ”„๋กœ์ ํŠธ์—์„œ Properties ํŒŒ์ผ ํ™œ์šฉํ•˜๊ธฐ - [Spring] EnvironmentCapable - Profile ์‚ฌ์šฉํ•˜๊ธฐ [Spring] EnvironmentCapable - Property ์‚ฌ์šฉํ•˜๊ธฐ ApplicationContext๋Š” EnvironmentCapable์„ ์ƒ์†๋ฐ›์œผ๋ฉฐ, EnvironmentCapable์ด ์ œ๊ณตํ•˜๋Š” ์ฃผ์š” ๊ธฐ๋Šฅ์—๋Š” profile๊ณผ property๊ฐ€ ์žˆ๋‹ค. ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ๊ทธ ์ค‘ property์— ๋Œ€ํ•ด ์‚ดํŽด๋ณธ๋‹ค. 1. Property ๊ธฐ๋Šฅ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€ key, value ์Œ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ํ”„๋กœํผํ‹ฐ์— ๊ฐ„ํŽธํ•˜๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค. Spring์€ ํ”„๋กœํผํ‹ฐ์— '๊ณ„์ธตํ˜•'์œผ๋กœ ์ ‘๊ทผํ•˜๋Š”๋ฐ ๊ณ„์ธตํ˜•์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค๋Š” ๋ง์€ ํ”„๋กœํผํ‹ฐ์— ์šฐ์„ ์ˆœ์œ„๊ฐ€.. 2020. 3. 4.
[Spring] EnvironmentCapable - Profile ์‚ฌ์šฉํ•˜๊ธฐ [Spring] EnvironmentCapable - Profile ์‚ฌ์šฉํ•˜๊ธฐ Spring์˜ ApplicationContext๋Š” BeanFactory ๊ธฐ๋Šฅ๋งŒ ํ•˜๋Š”๊ฑด ์•„๋‹ˆ๋‹ค. ApplicationContext๊ฐ€ ์ƒ์†๋ฐ›๋Š” ๋‹ค์–‘ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋“ค ์ค‘ EnvironmentCapable ์ธํ„ฐํŽ˜์ด์Šค๋Š” 'Profile(ํ”„๋กœํŒŒ์ผ)' ์ด๋ผ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. Profile(ํ”„๋กœํŒŒ์ผ)์˜ ๊ฐœ๋… ํ”„๋กœํŒŒ์ผ = ๋นˆ๋“ค์˜ ๋ฌถ์Œ ํ”„๋กœํŒŒ์ผ์€ ํŠน์ • ์‹คํ–‰ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ๋นˆ๋“ค์˜ ๋ฌถ์Œ์ด๋‹ค. ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ๋นˆ ๋ฌถ์Œ๊ณผ ํ”„๋กœ๋•์…˜(์šด์˜) ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ๋นˆ ๋ฌถ์Œ์ด ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ๋˜ ๊ฐ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์„œ๋กœ ๋‹ค๋ฅธ ๋นˆ๋“ค์„ ์จ์•ผํ•˜๋Š” ๊ฒฝ์šฐ, ํŠน์ • ํ™˜๊ฒฝ์—์„œ๋งŒ ๋“ฑ๋กํ•ด์•ผํ•˜๋Š” ๋นˆ๋“ค์ด ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ํ”„๋กœํŒŒ์ผ์€ ๊ทธ๋Ÿฌํ•œ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•  ์ˆ˜ ์žˆ๋Š”.. 2020. 3. 4.
[Spring] ๋นˆ์„ ์„ค์ •ํ•˜๋Š” 3๊ฐ€์ง€ ๋ฐฉ๋ฒ• - XML, JAVA, Component Scan [Spring] ๋นˆ์„ ์„ค์ •ํ•˜๋Š” 3๊ฐ€์ง€ ๋ฐฉ๋ฒ• - XML, JAVA, Component Scan ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ์˜ˆ์ œ ์ฝ”๋“œ์— ํ•„์š”ํ•œ ์˜์กด์„ฑ์„ ๋ฐ›๊ธฐ ์œ„ํ•ด spring boot ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ๊ฒƒ์ด๋‹ค. ์ฐธ๊ณ ๋กœ ์˜ˆ์ œ ์ฝ”๋“œ์—๋Š” ์ด ์˜์กด์„ฑ์ด ํ•„์š”ํ•˜๋‹ค. Spring Initializr๋ฅผ ์„ ํƒํ•˜๊ณ  Next๋ฅผ ํด๋ฆญํ•œ๋‹ค. Group, Artifact, Name์„ ์ž…๋ ฅํ•˜๊ณ  Next๋ฅผ ํด๋ฆญํ•œ๋‹ค. Group์€ ํŒจํ‚ค์ง€๋ช…์„ ์ ์–ด์ค€๋‹ค. (๋ณดํ†ต ๋„๋ฉ”์ธ๋ช…์„ ๋’ค์ง‘์–ด์„œ..) Web - Spring Web์„ ๋„ฃ๊ณ  Next๋ฅผ ํด๋ฆญํ•œ๋‹ค. Finish๋ฅผ ํด๋ฆญํ•ด์„œ ์‹ ๊ทœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์„ ์™„๋ฃŒํ•œ๋‹ค. Spring boot ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. pom.xml์„ ์—ด์–ด๋ณด๋ฉด spring boot 2.2.5 ๋ฒ„์ „์œผ๋กœ ๋งŒ๋“ค์–ด์กŒ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ์šฐ์ธก์˜.. 2020. 3. 1.