Notice
Recent Posts
Recent Comments
Link
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ „์ฒด ๊ธ€ (1099)

KoreanFoodie's Study

[MiniEssay] ์‹œ๊ฐ„์—๋„ ์˜์ˆ˜์ฆ์ด ๋ถ™๋Š”๋‹ค๋ฉด

์‹œ๊ฐ„์ด ์—†๋‹ค. ์‹œ๊ฐ„์„ ์‚ฌ๊ณ  ์‹ถ๋‹ค. ๋ฏธํ•˜์—˜ ์—”๋ฐ์˜ ๋ชจ๋ชจ์—์„œ์ฒ˜๋Ÿผ, ์‹œ๊ฐ„์€ํ–‰์ด ์žˆ์—ˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค. ์„ฑ์‹คํžˆ ๊ฐš์•„๋‚˜๊ฐˆ ์ž์‹ ๋„ ์žˆ๋Š”๋ฐ. ๋ฌผ๋ก  ์‹ ์šฉ๋ถˆ๋Ÿ‰์ž๊ฐ€ ๋˜์–ด ๋ง๋…„์„ ์ธํ๋ฒ ์ดํ„ฐ์—์„œ ๋งˆ๊ฐํ• ์ˆ˜๋„ ์žˆ์ง€๋งŒ์„œ๋„. ์•ˆํƒ€๊น๊ฒŒ๋„ ์€ํ–‰์€ ์—†์ง€๋งŒ, ํ˜„์‹ค ์„ธ๊ณ„์—์„œ๋Š” ์‹œ๊ฐ„์„ ์‚ฌ๊ณ  ํŒŒ๋Š” ์ผ์ด ์„ฑํ–‰ํ•˜๊ณ  ์žˆ๋‹ค. ๋น„๋ก ์ €์žฅ์„ ํ•  ์ˆ˜ ์—†๊ธฐ์— ๋ณด์ด์ง€ ์•Š์„ ๋ฟ. ์‚ฌ๋žŒ๋“ค์€ ์‹œ๊ฐ„์„ ๋ฌผ๊ฑด๊ณผ ๋งž๋ฐ”๊พธ๊ธฐ๋„ ํ•˜๊ณ , ๋ˆ์„ ๋ฒŒ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ์–ด๋–ป๊ฒŒ ์“ฐ๋Š” ๊ฒƒ์ด ์ œ์ผ ํ˜„๋ช…ํ•œ ์†Œ๋น„์ผ์ง€๋Š” ๊ทธ ์‚ฌ๋žŒ๋งŒ์ด ์•Œ ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์ด๊ฒ ์ง€. ์‹œ๊ฐ„์—๋„ ์˜์ˆ˜์ฆ์ด ๋ถ™๋Š”๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ ํ—ˆํˆฌ๋ฃจ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ๋…ธ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ๋ˆ๊ณผ๋Š” ๋‹ฌ๋ฆฌ ์‹œ๊ฐ„์—๋Š” ๋ฒ•์ธ์นด๋“œ ๋”ฐ์œ„๋„ ์—†์œผ๋‹ˆ. ํ•จ๋ถ€๋กœ ์‚ฌ์šฉํ•œ ์‹œ๊ฐ„์€ ๋‚˜๋ž๋‹˜์กฐ์ฐจ ๊ตฌ์ œํ•ด ์ค„ ์ˆ˜ ์—†๋‹ค. ๋‚ด ๋จธ๋ฆฟ ์† ์ฐฝ๊ณ ๋Š” ํ—›๋˜์ด ์‚ฌ์šฉํ•œ ์˜์ˆ˜์ฆ์ด ๊ฐ€๋“ ๋‹ด๊ฒจ ๋„˜์น˜๊ธฐ ์ง์ „์ด..

Gradle (๊ทธ๋ ˆ์ด๋“ค) ์ž…๋ฌธ : #1 ๊ทธ๋ ˆ์ด๋“ค์ด๋ž€?

Gradle (๊ทธ๋ ˆ์ด๋“ค)? ๊ทธ๋ฆผ : ๋นŒ๋“œ ํˆด์˜ ์ง„ํ™”์™€ ๊ทธ๋ ˆ์ด๋“ค์˜ ์œ„์น˜ ๊ทธ๋ ˆ์ด๋“ค์€ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด(JVM ์–ธ์–ด)์ธ ๊ทธ๋ฃจ๋น„๋ฅผ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ๋กœ ์„ ํƒํ–ˆ๋‹ค. ๊ทธ๋ ˆ์ด๋“ค ๊ฐœ์š” ๊ทธ๋ ˆ์ด๋“ค์€ Build Automation Evolved ๋ผ๊ณ  ์†Œ๊ฐœ๋œ๋‹ค. ๊ทธ๋ ˆ์ด๋“ค์€ ๊ฐ์ข… ํ”„๋กœ์ ํŠธ ์ž๋™ํ™”์— ์ ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์•คํŠธ์˜ ์œ ์—ฐ์„ฑ, ๋ฉ”์ด๋ธ์˜ ์˜์กด๊ด€๊ณ„ ๊ด€๋ฆฌ์™€ ๊ทœ์น™ ๊ธฐ๋ฐ˜ ๋“ฑ์˜ ๊ธฐ์กด ๋นŒ๋“œ ํˆด์˜ ์žฅ์ ์„ ๊ฐ€์ ธ์™”๋‹ค. ๋˜ํ•œ ๊ทธ๋ฃจ๋น„ DSL(Domain-Specific Language)์„ ๋„์ž…ํ•ด ํšจ์œจ์ ์ธ ๋นŒ๋“œ๋ฅผ ์‹คํ˜„ํ–ˆ๋‹ค. ๊ทธ๋ž˜์ด๋“ค์˜ ๊ณต์‹ ์‚ฌ์ดํŠธ, ์ฝ”๋“œ, ์‚ฌ์šฉ์ž ๊ฐ€์ด๋“œ ๊ทธ๋ ˆ์ด๋“ค์€ ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ ์ƒ์‚ฐ์„ฑ์ด ๋†’๊ณ (list literal, map literal, closure ๋“ฑ), ๋นŒ๋“œ ์ˆœ์„œ๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์‰ฌ์šฐ๋ฉฐ, ๋ฉ€ํ‹ฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€์‘ํ•˜๊ณ , ์ปดํฌ๋„ŒํŠธ๋ฅผ..

Tutorials/Gradle 2021. 12. 3. 07:25
[MiniEssay] ํšŒ์ „๋ชฉ๋งˆ๋Š” ์šฐ๋ฆฌ๋ฅผ ์†์ด๊ณ  ์žˆ๋‹ค

์˜ค๋Š˜์€ ํšŒ์ „๋ชฉ๋งˆ๋ผ๋Š” ๋…ธ๋ž˜๋ฅผ ๋“ค์—ˆ๋‹ค. ํ•œ ๊ฐ€์ง€ ๋…ธ๋ž˜์— ๊ฝ‚ํžˆ๊ฒŒ ๋˜๋ฉด ํ•˜๋ฃจ์ข…์ผ ๊ทธ ๋…ธ๋ž˜๋ฅผ ํ‹€์–ด๋†“๋Š” ๋‚ด ๋ฒ„๋ฆ‡์ด ๋˜ ๋ฐœ๋™๋˜์—ˆ๋‹ค. ๊ณต๋ถ€์ค‘์—๋„, ์ƒค์›Œํ• ๋•Œ๋„, ์ด๋™์ค‘์—๋„ ์–ด๊น€์—†์ด ํšŒ์ „๋ชฉ๋งˆ๊ฐ€ ๋ฐ˜๋ณต์žฌ์ƒ๋œ๋‹ค. ํšŒ์ „๋ชฉ๋งˆ๋ผ. ํšŒ์ „๋ชฉ๋งˆ์—๋Š” ํ•ญ์ƒ ํŠน์œ ์˜ ๊ฐ์„ฑ์ด ๋ฌป์–ด์žˆ๋‹ค. ์‚ฌ์‹ค์€ ์–ด๋ ธ์„ ์ , ํšŒ์ „๋ชฉ๋งˆ๋ฅผ ํƒ€ ๋ณธ ์ผ์ด ๊ธฐ์–ต๋‚˜์ง€ ์•Š๋Š”๋‹ค. ๊ธฐ์–ต์„ ๋ชป ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํƒ€ ๋ณธ ์ ์ด ์—†์„์ง€๋„ ๋ชจ๋ฅด์ง€. ๋น™๋น™ ๋Œ์•„๊ฐ€๋Š” ํšŒ์ „๋ชฉ๋งˆ์ฒ˜๋Ÿผ ์˜์›ํžˆ ๊ณ„์†๋  ๊ฒƒ์ฒ˜๋Ÿผ. ๋น™๋น™ ๋Œ์•„์˜จ ์šฐ๋ฆฌ์˜ ์‹œ๊ฐ„์ฒ˜๋Ÿผ. ๋…ธ๋ž˜ ๊ฐ€์‚ฌ์ฒ˜๋Ÿผ, ๋‚˜๋„ ๋‚˜์—๊ฒŒ ์ฃผ์–ด์ง„ ์‹œ๊ฐ„๊ณผ ์ Š์Œ์ด ๊ณ„์†๋  ์ค„๋งŒ ์•Œ์•˜๋‹ค. ๋น™๋น™ ๋Œ์•„๊ฐ€๋Š” ํšŒ์ „ ๋ชฉ๋งˆ์ฒ˜๋Ÿผ, ๋‚ด ๋ˆˆ์— ๋ณด์ด๋Š” ํ’๊ฒฝ์€ ํ•œ๋ฐ”ํ€ด๋ฅผ ๋Œ์•„๋„ ์ฒ˜์Œ ๊ทธ๋Œ€๋กœ์ผ์ค„ ์•Œ์•˜๋‹ค. ๋น™๋น™ ๋Œ์•„๊ฐ€๋Š” ํšŒ์ „๋ชฉ๋งˆ๋ฅผ ํƒ„ ์ฑ„ ์ฃผ๋ณ€์„ ๋‘˜๋Ÿฌ๋ณด๋‹ˆ, ์–ด๋Š์ƒˆ ์ฒซ ๋ฐ”ํ€ด์งธ์˜ ํ’๊ฒฝ๊ณผ๋Š” ์‚ฌ๋ญ‡ ๋‹ฌ๋ผ์ง„ ๊ฒƒ๋“ค์ด ๋ˆˆ..

[MiniEssay] ์ ์™ธ์„  ์นด๋ฉ”๋ผ

์–ด์ œ๋Š” ํ•˜๋ฃจ์ข…์ผ ์›์Šˆํƒ€์ธ์˜ ์ ์™ธ์„  ์นด๋ฉ”๋ผ๋ฅผ ๋“ค์—ˆ๋‹ค. 2020๋…„ ๊ฒจ์šธ, ๋‚˜๋Š” ๋ณ„ ๊ฑฑ์ •๋„ ์—†์ด ์ž์ทจ๋ฐฉ์—์„œ ์ด ๋…ธ๋ž˜๋ฅผ ๋“ค์—ˆ๋‹ค. ์ด ๋…ธ๋ž˜๊ฐ€ ๋‚ด ๊ฑฑ์ •์„ ๊ฐ€์ ธ๊ฐ€๋ฒ„๋ฆฐ๊ฑด์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค. ๊ทธ๋ƒฅ, ์ด ๋…ธ๋ž˜๋ฅผ ๋“ค์œผ๋ฉด ๊ทธ๋•Œ๋กœ ๋˜๋Œ์•„๊ฐ„ ๊ฒƒ๋งŒ ๊ฐ™๋‹ค. ๋”ฐ๋œปํ•œ ์ „๊ธฐ์žฅํŒ ์œ„ ์‹ธ๊ตฌ๋ ค ์ผ์ธ์šฉ ์นจ๋Œ€์—์„œ ์›…ํฌ๋ฆฌ๊ณ  ์•‰์•„ ๊ณ ๊ฐœ๋งŒ ์‚ด์ง ํ”๋“ค๋˜ ๋‚ด ๋ชจ์Šต์ด ๋– ์˜ค๋ฅธ๋‹ค. ์—ฌ์œ ์™€ ๊ถŒํƒœ ์‚ฌ์ด์—์„œ ํ•˜๋ฆด์—†์ด ์‹œ๊ฐ„์„ ์ฃฝ์ด๋˜ ํ•œ์‹ฌํ•˜๊ณ  ๋ถ€๋Ÿฌ์šด ๋‚ด๊ฐ€ ๋ณด์ธ๋‹ค. ๊ทธ๋• ๊ทธ๋žฌ์—ˆ์ง€. ๊ฒจ์šฐ 1๋…„์ด๋ผ๋‹ˆ. ๋ฒŒ์จ 1๋…„์ด๋ผ๋‹ˆ. ์‹œ๊ฐ„์€ ๋„ˆ๋ฌด๋‚˜๋„ ์†Œ์ค‘ํ•˜๋‹ค. ๊ทธ๋Ÿฌ๋‹ˆ ๋…ธ๋ž˜๋„ ํ•จ๋ถ€๋กœ ๊ณ ๋ฅด๋ฉด ์•ˆ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ๋…ธ๋ž˜๋ฅผ ๋“ฃ๋Š”๋‹ค๋Š” ๊ฑด, ๊ทธ ๊ฐ€์ˆ˜์˜ ๋ชฉ์†Œ๋ฆฌ์— ๋‚ด ์‹œ๊ฐ„์„ ๋ฐ”์น˜๋Š” ํ–‰์œ„์ด๋‹ˆ๊นŒ. ๋…ธ๋ž˜๊ฐ€ ๋‚˜๋ผ์—์„œ ํ—ˆ์šฉํ•œ ์œ ์ผํ•œ ๋งˆ์•ฝ์ด๋ผ๋Š” ์šฐ์Šค๊ฐฏ์†Œ๋ฆฌ์ฒ˜๋Ÿผ, ๊ทธ๋•Œ์˜ ๋‚˜๋Š” ๊ทธ๋ƒฅ ๋ฌด์–ธ๊ฐ€์— ์ทจํ•˜๊ณ  ์‹ถ์—ˆ๋˜ ๊ฑธ์ง€๋„ ๋ชจ๋ฅด๊ฒ ๋‹ค. ๊ทธ๋ž˜..

[MiniEssay] ์ง€ํ•˜์ฒ ์—์„œ

์‚ฌ๋žŒ๋“ค๋กœ ๋นฝ๋นฝํžˆ ๊ฐ€๋“์ฐฌ ๊ฐ•์ฒ ์ƒ์ž ์†์—์„œ ์‚ฌ๋žŒ๋“ค์€ ํ•˜๋‚˜๊ฐ™์ด ํ”Œ๋ผ์Šคํ‹ฑ ์žฅ๋‚œ๊ฐ์„ ์†์— ์ฅ๊ณ  ์žˆ๋‹ค. ๋•Œ๋ก  ์ƒ์ƒ์ด ๊ฐ€์งˆ ์•Š๋Š”๋‹ค. ์–ด๋ฅธ์•„์ด๋“ค์˜ ์†์— ํ˜•ํ˜•์ƒ‰์ƒ‰์˜ ์žฅ๋‚œ๊ฐ์ด ๋“ค๋ ค์žˆ์ง€ ์•Š์•˜๋˜ ๊ด‘๊ฒฝ์ด. ๋ถ„๋ช… ์˜ˆ์ „์—๋Š” ๊ทธ๋žฌ์„ ํ…๋ฐ. ๊ณ ๊ฐœ๋ฅผ ์ฒ˜๋ฐ•๊ณ  ํ•œ ๊ณณ๋งŒ ๋ฐ”๋ผ๋ณด๋Š” ๋Œ€์‹ , ์ฒœ์žฅ๊ณผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์˜ ์–ผ๊ตด์„ ๊ตฌ๊ฒฝํ•˜๋ฉฐ ์‹œ๊ฐ„์„ ์ฃฝ์˜€์„ ํ…๋ฐ. ๊ทธ๋Ÿฐ ์žฅ๋ฉด์€ ๋ถ„๋ช… ๋„ˆ๋ฌด๋‚˜ ์–ด์ƒ‰ํ•  ๊ฒƒ์ž„์— ํ‹€๋ฆผ์—†๋‹ค. ๊ฑฐ๋Œ€ํ•œ ์—˜๋ฆฌ๋ฒ ์ดํ„ฐ๋ฅผ ํƒ€๊ณ  ์„œ๋กœ์˜ ๋ˆˆ์น˜๋ฅผ ๋ณด๋Š” ๊ทธ๋Ÿฐ ์ƒํ™ฉ์ด๊ฒ ์ง€, ๋ชจ๋ฅด๊ธด ๋ชฐ๋ผ๋„. ์ถœํ‡ด๊ทผ๊ธธ ๋ฒ„์Šค๋„ ์ง€ํ•˜์ฒ ์ฒ˜๋Ÿผ ์ˆ˜๋งŽ์€ ์‚ฌ๋žŒ๋“ค์„ ์ฝฉ๋‚˜๋ฌผ์ฒ˜๋Ÿผ ๊ฐ€๋“ ์‹ฃ๋Š”๋‹ค. ์–ด๋–ค ์„ ๋ฐฐ๊ฐ€ ๋‚˜์—๊ฒŒ ์ด๋ ‡๊ฒŒ ๋งํ–ˆ๋‹ค. ๋งŒ์•ฝ ํ™”์‚ฐ ํญ๋ฐœ์ด๋‚˜ ๋‹ค๋ฅธ ์žฌํ•ด๊ฐ€ ๋ฐœ์ƒํ•ด, ํผํŽ˜์ด์ฒ˜๋Ÿผ ์‚ฌ๋žŒ๋“ค์ด ์‚ฐ ์ฑ„๋กœ ๋ณด์กด๋˜๊ฒŒ ๋œ๋‹ค๋ฉด. ๊ทธ๋ฆฌ๊ณ  ์ˆ˜๋งŽ์€ ์‹œ๊ฐ„์ด ํ˜๋Ÿฌ ์™ธ๊ณ„์ธ์ด ์šฐ๋ฆฌ ํ–‰์„ฑ์— ๋ฐฉ๋ฌธํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด. ๋ฒ„์Šค์— ํƒ„ ์‚ฌ๋žŒ๋“ค..

์ž๋ฐ” Spring FrameWork #4 : ํ”„๋ฆฌ์  ํ…Œ์ด์…˜๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค๋ ˆ์ด์–ด ํ†ตํ•ฉ

๋น„์ฆˆ๋‹ˆ์Šค ์ปดํฌ๋„ŒํŠธ ์‚ฌ์šฉํ•˜๊ธฐ ๋‹ค์Œ ๊ทธ๋ฆผ์ด ๋ฐ”๋กœ ํ•ต์‹ฌ์ด์ž, "์ˆฒ"์— ํ•ด๋‹นํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์˜ ๊ด€๊ณ„ ํ†ฐ์บฃ ์„œ๋ฒ„๋ฅผ ์ฒ˜์Œ ๊ตฌ๋™ํ•˜๋ฉด โ‘  web.xml ํŒŒ์ผ์„ ๋กœ๋”ฉํ•˜์—ฌ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ตฌ๋™๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  โ‘ก ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” web.xml ํŒŒ์ผ์— ๋“ฑ๋ก๋œ ContextLoaderListener ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ(Pre Loading)ํ•œ๋‹ค. ์ด๋•Œ ContextLoaderListener ๊ฐ์ฒด๋Š” resources ์†Œ์Šค ํด๋”์— ์žˆ๋Š” business-layer.xml ํŒŒ์ผ์„ ๋กœ๋”ฉํ•˜์—ฌ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ตฌ๋™ํ•˜๋Š”๋ฐ, ์ด๋ฅผ 'Root ์ปจํ…Œ์ด๋„ˆ'๋ผ๊ณ  ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋•Œ, Service ๊ตฌํ˜„ ํด๋ž˜์Šค๋‚˜ DAO ๊ฐ์ฒด๋“ค์ด ๋ฉ”๋ชจ๋ฆฌ์— ์ƒ์„ฑ๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ‘.do’ ์š”์ฒญ์„ ์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๋ฉด ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” D..

Tutorials/Spring Framework 2021. 11. 25. 16:39
์ž๋ฐ” Spring FrameWork #3 : ํŠธ๋žœ์žญ์…˜, JSP, Spring MVC

Transaction ๊ด€๋ฆฌ ์Šคํ”„๋ง๊ณผ ๋น„๊ต๋˜๋Š” EJB๋Š” ๋ชจ๋“  ๋น„์ฆˆ๋‹ˆ์Šค ๋ฉ”์†Œ๋“œ์— ๋Œ€ํ•œ ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ๋ฅผ EJB ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ด ์ค€๋‹ค. ์Šคํ”ผ๋ง์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์˜ ๊ธฐ๋Šฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์Šคํ”„๋ง์˜ ํŠธ๋žœ์žญ์…˜ ์„ค์ •์—์„œ๋Š” ์•ž์—์„œ ํ•™์Šตํ•œ AIO๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ XML ๊ธฐ๋ฐ˜์˜ AOP ์„ค์ •๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ , ์–ด๋…ธํ…Œ์ด์…˜์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์• ์ŠคํŽ™ํŠธ๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ๋„ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๊ณ  ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. 1. ํŠธ๋žœ์ ์…˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋“ฑ๋ก 2. ํŠธ๋ Œ์žญ์…˜ ๊ด€๋ฆฌ์ž ๋“ฑ๋ก 3. ํŠธ๋žœ์žญ์…˜ ์–ด๋“œ๋ฐ”์ด์Šค ์„ค์ • ์—˜๋ฆฌ๋จผํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์†์„ฑ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. 4. AOP ์„ค์ •์„ ํ†ตํ•œ ํŠธ๋žœ์žญ์…˜ ์ ์šฉ ์œ„์˜ ์„ค์ •๋“ค์„ ํ†ตํ•ด ํŠธ๋žœ์žญ์…˜์ด ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์„ ๊ทธ๋ฆผ์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. JSP : Scriptlet. ๊ทธ๋ƒฅ ์ž๋ฐ” ์ฝ”๋“œ ..

Tutorials/Spring Framework 2021. 11. 24. 22:53
์ž๋ฐ” Spring FrameWork #2 : IoC, AOP(Pointcut, Aspect), ์–ด๋“œ๋ฐ”์ด์Šค

IoC๋ฅผ ์ด์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์ปดํฌ๋„ŒํŠธ ๊ฐœ๋ฐœ : 4๊ฐœ์˜ ์ž๋ฐ” ํŒŒ์ผ 1. VO(Value Object) ํด๋ž˜์Šค ์ž‘์„ฑ VO(Value Object) ํด๋ž˜์Šค๋Š” ๋ ˆ์ด์–ด์™€ ๋ ˆ์ด์–ด ์‚ฌ์ด์—์„œ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์ฃผ๊ณ ๋ฐ›์„ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค. VO ํด๋ž˜์Šค๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ƒ์„ฑ๋˜์–ด ์žˆ๋Š” ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋งคํ•‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. 2. DAO(Data Access Object) ํด๋ž˜์Šค SQL ๋ช…๋ น์–ด๋“ค 3. Service ์ธํ„ฐํŽ˜์ด์Šค 4. Service ๊ตฌํ˜„ ํด๋ž˜์Šค @Service, @Repository, @Controller ์–ด๋…ธํ…Œ์ด์…˜ @Component๋ฅผ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋‚˜๋ˆ” (ํด๋ž˜์Šค๋ณ„๋กœ @Repository, @Service, @Data) AOP(Aspect Oriented Programming) IoC๊ฐ€ ๊ฒฐํ•ฉ๋„์™€ ..

Tutorials/Spring Framework 2021. 11. 23. 16:56