๐Ÿ’ป Software Engineering/Java Spring 5

Spring Boot Batch - ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ

๋ช‡ ์ฃผ์ „ ์‚ฌ์šฉ์ž 6๋งŒ๋ช…์„ ๋Œ€์ƒ์œผ๋กœ Batch ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š” ์ด๋ฒคํŠธ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๊ทธ๋‚˜๋งˆ๋„ ๋ชจ์ˆ˜๋Š” 30๋งŒ๋ช…+ ์ด์—ˆ๊ณ  ๊ทธ์ค‘์—์„œ 6๋งŒ๋ช…์„ ์ถ”๋ ค์„œ, ์ถ”๋ฆฐ ์‚ฌ์šฉ์ž ๋Œ€์ƒ์œผ๋กœ ํŠน์ • ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด Task... 9์›”๋‹ฌ์— ์™„์„ฑํ•ด๋†“๊ณ ๋„ ํ‹ˆํ‹ˆ์ด ์ž˜๋ชป๋œ ๊ฒƒ์€ ์—†๋‚˜ ํ™•์ธํ•  ์ •๋„๋กœ ๋งค์šฐ๋งค์šฐ ์‹ ๊ฒฝ์ด ์“ฐ์˜€์—ˆ๋Š”๋ฐ, ๋“œ๋””์–ด ๋ช‡ ์ฃผ์ „ ์ฒ˜์Œ ์šด์˜ํ™˜๊ฒฝ์—์„œ ์ˆ˜ํ–‰ํ•œ ๋‚ , ๊ฒฐ๋ก ์ ์œผ๋กœ ๊ธฐ๋Šฅ์€ ์ •์ƒ์ ์œผ๋กœ ์ž˜ ์ž‘๋™ํ–ˆ๋‹ค! ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ ๋ฐฐ์น˜ ์ž‘์—…์ด ์ƒ๊ฐ๋ณด๋‹ค ๋Š๋ฆฌ๊ฒŒ ๋Œ์•˜๋‹ค. ์–ด๋Š์ •๋„๋ƒ๋ฉด ๋ฐฅ ๋จน๊ณ  ๋ฐ–์— ๋‚˜๊ฐ€์„œ ์ปคํ”ผ ๋œจ๊ฑฐ์šด ๊ฑฐ ํ•œ์ž” ํ˜ธํ˜ธํ˜ธ ์ฒœ์ฒœํžˆ ๋ถˆ์–ด๋จน๊ณ  ๋“ค์–ด์™€์„œ, ๊ฑฐ๊ธฐ๋‹ค ๋“œ๋ผ๋งˆ ํ•œ ํŽธ ๋ด์•ผ ์ž‘์—…์ด ์™„๋ฃŒ๋˜๋Š” ์†๋„. T.T ๊ฐœ์„ ์ด ์‹œ๊ธ‰ํ•ด์„œ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์„ ๋ฏธ๋ฆฌ ์ •๋ฆฌํ•ด๋‘”๋‹ค. (์ž˜ ์ ์šฉ๋˜๋ฉด ์ข‹์€ Before & After๊ฐ€ ๋˜๊ฒ ์ง€..?) ์šฐ์„ ์€ ๋‚˜๋งŒ ์•Œ์•„๋ณด๊ฒŒ๋” ์š”..

Spring 101 - #4 ์Šคํ”„๋ง ๋””์ž์ธ ํŒจํ„ด Spring Design Pattern

ํฌ์ŠคํŠธ ์ œ๋ชฉ ๊ทธ๋Œ€๋กœ Spring ๊ธฐ์ดˆ๋ฅผ ๋‹ค์น˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” TIL ์„ฑ๊ฒฉ์˜ ์Šคํ”„๋ง ๊ธฐ์ดˆ ์š”์•ฝ ์‹œ๋ฆฌ์ฆˆ์ž…๋‹ˆ๋‹ค. Java๋Š” ์•„๋Š”๋ฐ Spring์€ ๋ญ”์ง€ ๋ชจ๋ฅด๊ฒ ๋Š” ์ดˆ๋ณด์ž๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๋„๋ก ์š”์ ๋งŒ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. Spring 101 ์‹œ๋ฆฌ์ฆˆ Spring 101 - #1 ์ž๋ฐ”์™€ ์ ˆ์ฐจ์ /๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ Spring 101 - #2 ์ž๋ฐ” ํ‚ค์›Œ๋“œ์™€ OOP ํŠน์„ฑ 4๊ฐ€์ง€ Spring 101 - #3 ๊ฐ์ฒด์ง€ํ–ฅ์„ค๊ณ„ 5์›์น™ SOLID Spring 101 - #4 ์Šคํ”„๋ง ๋””์ž์ธ ํŒจํ„ด Spring Design Pattern ์š”๋ฆฌ OOP ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”๋ฆฌ ๋„๊ตฌ ๊ฐ์ฒด์ง€ํ–ฅ 4๋Œ€ ํŠน์„ฑ (Encapsulation, Abstraction, Extend, Polymorphysim ์บก์ƒ์ถ”๋‹ค) ์š”๋ฆฌ ๋„๊ตฌ ์‚ฌ์šฉ๋ฒ• ๊ฐ์ฒด์ง€ํ–ฅ ์„ค๊ณ„ ์›์น™ (SOLID ..

Spring 101 - #3 ๊ฐ์ฒด์ง€ํ–ฅ์„ค๊ณ„ 5์›์น™ SOLID

ํฌ์ŠคํŠธ ์ œ๋ชฉ ๊ทธ๋Œ€๋กœ Spring ๊ธฐ์ดˆ๋ฅผ ๋‹ค์น˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” TIL ์„ฑ๊ฒฉ์˜ ์Šคํ”„๋ง ๊ธฐ์ดˆ ์š”์•ฝ ์‹œ๋ฆฌ์ฆˆ์ž…๋‹ˆ๋‹ค. Java๋Š” ์•„๋Š”๋ฐ Spring์€ ๋ญ”์ง€ ๋ชจ๋ฅด๊ฒ ๋Š” ์ดˆ๋ณด์ž๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๋„๋ก ์š”์ ๋งŒ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. Spring 101 ์‹œ๋ฆฌ์ฆˆ Spring 101 - #1 ์ž๋ฐ”์™€ ์ ˆ์ฐจ์ /๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ Spring 101 - #2 ์ž๋ฐ” ํ‚ค์›Œ๋“œ์™€ OOP ํŠน์„ฑ 4๊ฐ€์ง€ Spring 101 - #3 ๊ฐ์ฒด์ง€ํ–ฅ์„ค๊ณ„ 5์›์น™ SOLID Spring 101 - #4 ์Šคํ”„๋ง ๋””์ž์ธ ํŒจํ„ด Spring Design Pattern #SOLID Single Responsibility Principal ๋‹จ์ผ์ฑ…์ž„์›์น™ ์–ด๋–ค ํด๋ž˜์Šค๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜๋Š” ์ด์œ ๋Š” ์˜ค์ง ํ•˜๋‚˜๋‹ค ๋ชจ๋ธ ์ถ”์ƒํ™”๋•Œ ๊ณตํ†ต์ ์„ ์ƒ์œ„ ํด๋ž˜์Šค๋กœ ๋ฌถ๊ธฐ Open Close Principal ๊ฐœ๋ฐฉ..

Spring 101 - #2 ์ž๋ฐ” ํ‚ค์›Œ๋“œ์™€ OOP ํŠน์„ฑ 4๊ฐ€์ง€

ํฌ์ŠคํŠธ ์ œ๋ชฉ ๊ทธ๋Œ€๋กœ Spring ๊ธฐ์ดˆ๋ฅผ ๋‹ค์น˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” TIL ์„ฑ๊ฒฉ์˜ ์Šคํ”„๋ง ๊ธฐ์ดˆ ์š”์•ฝ ์‹œ๋ฆฌ์ฆˆ์ž…๋‹ˆ๋‹ค. Java๋Š” ์•„๋Š”๋ฐ Spring์€ ๋ญ”์ง€ ๋ชจ๋ฅด๊ฒ ๋Š” ์ดˆ๋ณด์ž๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๋„๋ก ์š”์ ๋งŒ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. Spring 101 ์‹œ๋ฆฌ์ฆˆ Spring 101 - #1 ์ž๋ฐ”์™€ ์ ˆ์ฐจ์ /๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ Spring 101 - #2 ์ž๋ฐ” ํ‚ค์›Œ๋“œ์™€ OOP ํŠน์„ฑ 4๊ฐ€์ง€ Spring 101 - #3 ๊ฐ์ฒด์ง€ํ–ฅ์„ค๊ณ„ 5์›์น™ SOLID Spring 101 - #4 ์Šคํ”„๋ง ๋””์ž์ธ ํŒจํ„ด Spring Design Pattern #๊ฐ์ฒด์ง€ํ–ฅ = ํ˜„์‹ค์„ธ๊ณ„๋ฅผ ์ธ์ง€ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ ์ฝ”๋“œ๋ฅผ ์–ธ์–ด๋กœ ๋ฒˆ์—ญํ–ˆ์„๋•Œ ์ฝํžˆ์ง€ ์•Š๋Š”๋‹ค๋ฉด ์ถฉ๋ถ„ํžˆ OOP๋ฅผ ํ™œ์šฉํ•˜๊ณ  ์žˆ์ง€ ๋ชปํ•œ ๊ฒƒ #Terms Class : ๋ถ„๋ฅ˜์— ๋Œ€ํ•œ ๊ฐœ๋… Object : ์‹ค์ฒด ->..

Spring 101 - #1 ์ž๋ฐ”์™€ ์ ˆ์ฐจ์ /๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ

ํฌ์ŠคํŠธ ์ œ๋ชฉ ๊ทธ๋Œ€๋กœ Spring ๊ธฐ์ดˆ๋ฅผ ๋‹ค์น˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” TIL ์„ฑ๊ฒฉ์˜ ์Šคํ”„๋ง ๊ธฐ์ดˆ ์š”์•ฝ ์‹œ๋ฆฌ์ฆˆ์ž…๋‹ˆ๋‹ค. Java๋Š” ์•„๋Š”๋ฐ Spring์€ ๋ญ”์ง€ ๋ชจ๋ฅด๊ฒ ๋Š” ์ดˆ๋ณด์ž๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๋„๋ก ์š”์ ๋งŒ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. Spring 101 ์‹œ๋ฆฌ์ฆˆ Spring 101 - #1 ์ž๋ฐ”์™€ ์ ˆ์ฐจ์ /๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ Spring 101 - #2 ์ž๋ฐ” ํ‚ค์›Œ๋“œ์™€ OOP ํŠน์„ฑ 4๊ฐ€์ง€ Spring 101 - #3 ๊ฐ์ฒด์ง€ํ–ฅ์„ค๊ณ„ 5์›์น™ SOLID Spring 101 - #4 ์Šคํ”„๋ง ๋””์ž์ธ ํŒจํ„ด Spring Design Pattern #๊ฐœ๋…๊ณผ ์ œํ’ˆ - ๊ฐœ๋…๊ณผ ์ œํ’ˆ์„ ํ—ท๊ฐˆ๋ฆฌ์ง€ ๋ง ๊ฒƒ Java๋Š” ์ œํ’ˆ, ๊ทธ ๊ฐœ๋…์€ OOP ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋‹ค Spring ์—ญ์‹œ ์ œํ’ˆ, ๊ทธ ๊ฐœ๋…์€ OOP Framework w/ IoC, DI, AOP, PSA, WEB..