header-img
Info :
BACKEND 42
list_img
IntelliJ, Eclipse :: ํด๋” ์ด๋ฆ„ ๋ณ€๊ฒฝ (rename)
2023.11.02
์ดํด๋ฆฝ์Šค (Eclipse) [Alt] + [Shift] + "R" IntelliJ [Shift] + "F6" - ์ด๋ฆ„ ๋ณ€๊ฒฝ ํ›„ "๋ฆฌํŒฉํ„ฐ๋ง(R)" ํด๋ฆญ ์‹œ ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” ๊ณณ์˜ ๋„ค์ด๋ฐ๋„ ๊ฐ™์ด ๋ฐ”๋€๋‹ค.
list_img
SpringBoot :: Swagger API ์—ฐ๋™
2023.10.26
dev. environment. SpringBoot 3.1.1 Java 17 ์Šค์›จ๊ฑฐ(Swagger) ๋ž€? ๊ฐœ๋ฐœ์ž๊ฐ€ REST API ์„œ๋น„์Šค๋ฅผ ์„ค๊ณ„, ๋นŒ๋“œ, ๋ฌธ์„œํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ํ”„๋กœ์ ํŠธ REST API๋ฅผ ๋ฌธ์„œํ™”ํ•˜๋Š” ๋„๊ตฌ์ด๋ฉฐ, API์— ๋Œ€ํ•œ ๋ช…์„ธ(Spec)์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋กœ์ ํŠธ API๊ฐ€ ์ˆ˜์ •๋˜๋”๋ผ๋„ ๋ฌธ์„œ๊ฐ€ ์ž๋™์œผ๋กœ ๊ฐฑ์‹ . 2011 ๋…„์— ์ฒ˜์Œ ๋„์ž…๋œ ๊ฐœ๋… ๊ธฐ์กด, ์›Œ๋“œ๋‚˜ ์—‘์…€ ๋“ฑ ์ˆ˜๊ธฐ ์ž‘์„ฑํ•˜๋Š” ๋ฌธ์„œํ˜• API ๋ช…์„ธ์„œ์™€ ๋‹ฌ๋ฆฌ ์„œ๋ฒ„์— ์ผ์ • ์…‹ํŒ…์„ ํ•ด์ฃผ๋ฉด API ๋ช…์„ธ์„œ๊ฐ€ ๊ฐฑ์‹ ๋œ๋‹ค. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ๊ฒฝ์šฐ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž์™€ ์†Œํ†ต์„ ํ•˜๋ ค๋ฉด API ๋ช…์„ธ์„œ๊ฐ€ ๊ผญ ํ•„์š”ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ์ด๊ฑธ ํ•˜๋‚˜ํ•˜๋‚˜ ๋ช…์„ธํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ๋„ ๊ฝค๋‚˜ ํฐ ์ผ๋กœ ํŒŒ์•…๋œ๋‹ค. ์ด๋Ÿฐ ์—…๋ฌด ๋กœ์Šค๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ์„œ๋ฒ„ ๋‹จ์— ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ๋ฐ”..
list_img
Sping :: Target Folder
2023.10.25
Target ํด๋” ํ”„๋กœ์ ํŠธ ์ปดํŒŒ์ผ ์‹œ ์ปดํŒŒ์ผ๋œ ํŒŒ์ผ์ด ์ €์žฅ๋˜๋Š” target/classes๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ๊ณณ ํ”„๋กœ์ ํŠธ ๋นŒ๋“œ ์‹œ target ์ด๋ผ๋Š” ํด๋”๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. Maven์„ ์ด์š”ํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•  ๊ฒฝ์šฐ ํ•ด๋‹น ํด๋”๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. ์ถ”ํ›„ ํ”„๋กœ์ ํŠธ์˜ ๊ฒฐ๊ณผ๋ฌผ์ธ .jar ๋˜๋Š” .war๋ฅผ ์‹ค ์„œ๋ฒ„์— ๋ฐ˜์˜ํ•  ๋•Œ target์— ์žˆ๋Š” jar๋‚˜ war๋ฅผ ๋ฐฐํฌํ•จ. if) ์‹ค์ˆ˜๋กœ ์‚ญ์ œ ์‹œ ๋นŒ๋“œ๋ฅผ ์ƒˆ๋กœ ํ•ด์„œ ๋‹ค์‹œ ๋งŒ๋“ค๋ฉด ๋จ. ์œ„์™€ ๊ฐ™์€ ๋กœ์ง์œผ๋กœ ์ธํ•˜์—ฌ ๋ณดํ†ต ์ปค๋ฐ‹๋Œ€์ƒ์ด ์•„๋‹ˆ๊ฒŒ ๋˜๋Š”๋ฐ intelliJ ์—์„œ๋Š” ๋นŒ๋“œ ๋Œ€์ƒ์—์„œ ์•Œ์•„์„œ ์ œ์™ธํ•ด์ค€๋‹ค. ์ด๋Ÿฐ์ƒ‰์œผ๋กœ ์ฃผํ™ฉ์ƒ‰? ํด๋”๊ฐ€ ๋˜๋ฉด ๋ฐฐํฌ ๋Œ€์ƒ์ด ์•„๋‹ˆ๋ผ๋Š” ๋œป. ๋งŒ์•ฝ.. ์ด๊ฑธ git ์— ๋ฐฐํฌ ๋Œ€์ƒ์œผ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด Ctrl + Alt + Shift + "S" ๋ฅผ ๋ˆ„๋ฅด๊ณ  ๋ชจ๋“ˆ > ์ฃผํ™ฉ์ƒ‰ ํด๋” ํด๋ฆญ..
SQL :: ์ƒ์œ„ N๊ฐœ ๋ฐ์ดํ„ฐ ์ถœ๋ ฅํ•˜๊ธฐ (mssql, oracle, mysql)
2023.09.14
1. MSSQL SELECT TOP 100 name, age, dept from [table๋ช…]; 2. ORACLE SELECT name, age, dept from [table๋ช…] where rownum
list_img
SQL :: ์˜ตํ‹ฐ๋งˆ์ด์ € ์กฐ์ธ(Optimizer Join)
2023.09.13
Nested Loop ์กฐ์ธ - ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ์ฐพ๊ณ , ๊ทธ ๋‹ค์Œ ํ…Œ์ด๋ธ”์€ ์กฐ์ธํ•˜๋Š” ๋ฐฉ์‹ - ๋จผ์ € ์กฐํšŒ ๋˜๋Š” ํ…Œ์ด๋ธ”์„ Outer Table ์ด๋ผ๊ณ  ํ•˜๊ณ , ๊ทธ ๋‹ค์Œ ์กฐํšŒ๋˜๋Š” ํ…Œ์ด๋ธ”์„ Inner Table. ์ฝ”๋”ฉ ํ˜•ํƒœ๋กœ ์„ค์ •ํ•ด๋ณด์ž๋ฉด... for(i=0; i
list_img
SQL :: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜ตํ‹ฐ๋งˆ์ด์ €(Optimizer)
2023.09.13
Database Optimizer ๋ž€? SQL์„ ๊ฐ€์žฅ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ตœ์ ์˜ ์ฒ˜๋ฆฌ ๊ฒฝ๋กœ๋ฅผ ์ƒ์„ฑํ•ด์ฃผ๋Š” DBMS ๋‚ด๋ถ€์˜ ํ•ต์‹ฌ ์—”์ง„ ์˜ตํ‹ฐ๋งˆ์ด์ €์˜ SQL ์ตœ์ ํ™” ๊ณผ์ • 1. ์‚ฌ์šฉ์ž๊ฐ€ ๋˜์ง„ ์ฟผ๋ฆฌ ์ˆ˜ํ–‰์„ ์œ„ํ•˜์—ฌ, ํ›„๋ณด๊ตฐ์ด ๋  ๋งŒํ•œ ์‹คํ–‰๊ณ„ํš์„ ์ฐพ๋Š”๋‹ค. 2. ๋ฐ์ดํ„ฐ ๋”•์…”๋„ˆ๋ฆฌ(Data Dictionary)์— ๋ฏธ๋ฆฌ ์ˆ˜์ง‘ํ•ด ๋†“์€ ์˜ค๋ธŒ์ ํŠธ ํ†ต๊ณ„ ๋ฐ ์‹œ์Šคํ…œ ํ†ต๊ณ„ ์ •๋ณด๋ฅผ ์ด์šฉํ•ด ๊ฐ ์‹คํ–‰ ๊ณ„ํš์˜ ์˜ˆ์ƒ ๋น„์šฉ์„ ์‚ฐ์ •ํ•œ๋‹ค. 3. ๊ฐ ์‹คํ–‰๊ณ„ํš์„ ๋น„๊ตํ•˜์—ฌ ์ตœ์ € ๋น„์šฉ์„ ๊ฐ–๋Š” ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•œ๋‹ค. ์˜ตํ‹ฐ๋งˆ์ด์ €์˜ ํ•„์š”์„ฑ - ์ž‘์„ฑํ•œ SQL๋ฌธ์„ ์–ด๋–ค ์‹์œผ๋กœ ์‹คํ–‰ํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ ์„ฑ๋Šฅ์ด ๋‹ฌ๋ผ์ง„๋‹ค. - ์˜ตํ‹ฐ๋งˆ์ด์ €๊ฐ€ ๋น„ํšจ์œจ์ ์œผ๋กœ ์‹คํ–‰ ๊ณ„ํš์„ ์ˆ˜๋ฆฝํ•˜๋ฉด, SQL ๊ฐœ๋ฐœ์ž๋Š” SQL์„ ๊ฐœ์„ ํ•ด์•ผ ํ•œ๋‹ค. - ์˜ตํ‹ฐ๋งˆ์ด์ €์—๊ฒŒ ์‹คํ–‰ ๊ณ„ํš์„ ๋ณ€๊ฒฝํ•˜๋„๋ก ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋•Œ..
list_img
๋ฒˆ(Bun1.0) ::
2023.09.13
Node.js ๋Œ€์•ˆ์„ ๋…ธ๋ฆฌ๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜๋Š” Bun. ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์„ ์œ„ํ•œ ๋ฒ„์ „ 1.0์„ ์ถœ์‹œํ–ˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ.. ์–ผ๋งŒํผ์˜ ์ด์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ์–ด๋–ค ๋‹จ์ ์„ ์ง€๋‹ˆ๊ณ  ์žˆ๋Š”์ง€ ํŠน์„ฑ์— ๊ด€์‹ฌ์ด ์ƒ๊ฒจ ํฌ์ŠคํŒ… ์‹œ๋„ ํ•ด๋ณธ๋‹ค. Bun ์ด๋ž€? javascript ์™€ typescript ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ์—์„œ ์‹คํ–‰, ๊ฐœ๋ฐœ, ํ…Œ์ŠคํŠธ, ๋””๋ฒ„๊น… ๊ณผ์ •์„ ํ•œ ๋ฒˆ์— ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ๊ฐœ๋ฐœ๋œ AllinOne ๋Ÿฐํƒ€์ž„ ํˆดํ‚ท. Bun ํŠน์ง• 1. ์ ์ฐจ ๋ณต์žกํ•ด์ง€๋Š” ์‹œ์Šคํ…œ ๊ตฌ์กฐ๋กœ ์ธํ•œ ์†๋„์ €ํ•˜๋ฅผ ๊ฐœ์„ ํ•œ ๊ฒƒ์ด ํŠน์ง•. node.js์— ๋น„ํ•ด ์ตœ๋Œ€ 5๋ฐฐ ๊ฐ€๋Ÿ‰ ๋น ๋ฅด๋‹ค๊ณ  ํ•œ๋‹ค. 1-1. ์ฝ”์–ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ 2. Javascript์˜ ๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 3. ์ง€๊ทธ(Zig)๋ผ๋Š” ์ƒˆ๋กœ์šด lowlevel ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ..
list_img
Backend :: Node.js ์™€ Spring ๋น„๊ต.
2023.09.11
Node.js - Javscript ์–ธ์–ด ๊ธฐ๋ฐ˜ - Javascript๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ Non-blocking I/O๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์ตœ์ ํ™”๋œ ํ”Œ๋žซํผ (๋น„๋™๊ธฐ ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ, System call์ด ๋“ค์–ด์˜ค๋ฉด, ์ปค๋„์€ I/O ์ž‘์—… ์™„๋ฃŒ ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ์ฆ‰์‹œ ์‘๋‹ต์„ ํ•ด์คŒ) - ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ๊ธฐ๋ฐ˜. ์žฅ์ : context switch ํ”„๋กœ์„ธ์Šค ๋น„์š”๊ตฌ, ์ž์› ์ ‘๊ทผ ๋™๊ธฐํ™” ์‹ ๊ฒฝ ์•ˆ์จ๋„ ๋จ, CPU ์‚ฌ์šฉ ํšจ์œจ์  ๋“ฑ.. ๋‹จ์ : ํ•˜๋‚˜ ์ฃฝ์œผ๋ฉด ์„œ๋ฒ„ ๋, ์—ฐ์‚ฐ๋Ÿ‰์ด ๋งŽ์€ ์ž‘์—…์˜ ๊ฒฝ์šฐ ํ•œ ์ž‘์—… ์™„๋ฃŒ๋˜์•ผ ๋‹ค๋ฅธ ์ž‘์—… ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ, ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถˆ๊ฐ€ํ•œ ๊ฒฝ์šฐ stop ๋จ ๋“ฑ.. - NPM(node package manager)๋ฅผ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ํŒจํ‚ค์ง€ ์ œ๊ณต - ์„œ๋น„์Šค ๋กœ์ง์ด ๋ณต์žกํ•ด์ง€๊ฑฐ๋‚˜, ์—…๋ฌด ๋‚œ์ด๋„๊ฐ€ ๋†’์€ ๊ฒฝ์šฐ๋Š” Javascript์˜ ํŠน์„ฑ(ํƒ€์ž…..
MSSQL :: CTE ๋ž€?
2023.08.25
CTE (Common Table Expression: ๊ณตํ†ต ํ…Œ์ด๋ธ” ์‹) - ๊ธฐ์กด์˜ ๋ทฐ, ํŒŒ์ƒ ํ…Œ์ด๋ธ”, ์ž„์‹œ ํ…Œ์ด๋ธ” ๋“ฑ์œผ๋กœ ์‚ฌ์šฉ๋˜๋˜ ๊ฒƒ์„ ๋Œ€์‹  ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋” ๊ฐ„๊ฒฐํ•œ ์‹์œผ๋กœ ๋ณด์—ฌ์ง€๋Š” ์žฅ์ ์„ ๊ฐ€์ง - ์‹ค์ œ๋กœ CTE๋ผ๋Š” ํ‚ค์›Œ๋“œ๊ฐ€ ์ฝ”๋“œ ์•ˆ์— ๋“ค์–ด๊ฐ€์ง€๋Š” ์•Š๊ณ , WITH ๊ตฌ๋ฌธ์„ ์ด์šฉํ•จ. - SELECT๋ฌธ์„ ๋ฏธ๋ฆฌ ์ •์˜ํ•˜์—ฌ ์ด๋ฆ„์„ ๋ถ™์ธ ํ›„, ์ด์–ด์ง€๋Š” ์ฟผ๋ฆฌ์—์„œ ํ…Œ์ด๋ธ”์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ - CTE๋Š” ๋ฐ”๋กœ ๋‹ค์Œ์— ์˜ค๋Š” select์ ˆ์—๋งŒ ํ•ด๋‹น CTE๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Œ. - ๋ชฉ์ ์— ๋”ฐ๋ผ ๋น„์žฌ๊ท€์  CTE, ์žฌ๊ท€ CTE๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Œ. ์žฌ๊ท€ CTE - ์ตœ์ดˆ CTE๊ฐ€ ๋ฐ˜๋ณต์ ์œผ๋กœ ์‹คํ–‰๋˜์–ด ์ „์ฒด ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ์–ป์„ ๋•Œ๊นŒ์ง€ ๋ฐ์ดํ„ฐ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๋ฐ˜ํ™˜ํ•˜๋Š” CTE - ๊ณ„์ธต์  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋จ - (**) ์žฌ๊ท€ CTE..
list_img
MSSQL :: ์ผ๋ฐ˜์ ์ธ ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊นŠ์ด ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ‘œ๊ธฐ
2023.08.24
BEFORE ๋Œ€๊ฐ• ์œ„์™€ ๊ฐ™์€ raw data ๊ฐ€ ์žˆ๋‹ค. ๋‚˜๋Š” front-back ์–‘๋‹จ ๊ฐ€๊ณต์„ ํ†ตํ•ด์„œ ํŠธ๋ฆฌ ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ์— ๋„๋‹ฌํ•˜์—ฌ์•ผ ํ•œ๋‹ค. ์ด๋Ÿฐ ๋ชจ์–‘์ด ๋˜์–ด์•ผ ํ•œ๋‹ค. AFTER ํ”„๋ก ํŠธ ๋‹จ์—์„œ mui treeview ๋ฅผ ์“ธ๊ฑฐ๊ธด ํ•˜์ง€๋งŒ.. ์šฐ์„  ์–ด๋–ป๊ฒŒ ๋ ์ง€ ๋ชฐ๋ผ level ๊ณผ display_number, PID(Parents ID)๋ฅผ ์ฑ„๋ฒˆํ•˜๋Š” ํ˜•์‹์œผ๋กœ ๋ฐ”๊ฟ”๋‘์—ˆ๋‹ค. json ์œผ๋กœ parent-child ํ˜•์‹์œผ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ด ๋ฒ ์ŠคํŠธ์ด๊ฒ ์ง€๋งŒ, mssql ์„ ์–ด๋–ค ์‹์œผ๋กœ ์ฃผ๋ฌผ๋Ÿฌ์•ผ ๊ทธ๋ ‡๊ฒŒ ์™„์„ฑ๋˜๋Š” ์ง€ ์‚ฌ์‹ค ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค.. ์ฐพ์•„๋ด๋„ ์˜จํ†ต ํ•˜๋“œ์ฝ”๋”ฉ ํ•˜๋Š” ๊ฒƒ ๋ฟ์ด๊ณ , (์•ฝ 3000๊ฑด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•˜๋“œ์ฝ”๋”ฉ?) ์žฌ๊ท€๋ฅผ ์“ฐ๋”๋ผ๋„ ID ๊ฐ€ ์ฑ„๋ฒˆ๋˜์–ด ์žˆ๋Š” ์ƒํƒœ์—์„œ parentID ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๊ณ ๋กœ ๊ฐ€๊ณต์„ ํ•œ๋ฒˆ ..
list_img
WAS์™€ Tomcat vs. Jetty ?
2023.08.21
Spring ์—์„œ ์‚ฌ์šฉ๋˜๋Š” WAS(Web Application Server)์˜ ์ข…๋ฅ˜์ธ Tomcat ๊ณผ Jetty. ๊ฐ๊ฐ์ด ๋ฌด์—‡์ธ์ง€ ๊ทธ๋ฆฌ๊ณ  ์ฐจ์ด์ ์€ ์–ด๋–ค ๊ฒƒ์ด ์žˆ๋Š”์ง€ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. WAS(Web Application Server) ? - ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋ฒ„ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค์–ด์„œ ๋™์ž‘์‹œํ‚ค๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋ ˆ์ž„์›ค,. - ์ธํ„ฐ๋„ท์ƒ์—์„œ HTTP๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž ์ปดํ“จํ„ฐ๋‚˜ ์žฅ์น˜์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ˆ˜ํ–‰ํ•ด์ฃผ๋Š” ๋ฏธ๋“ค์›จ์–ด(์†Œํ”„ํŠธ์›จ์–ด ์—”์ง„) - ๋™์  ์„œ๋ฒ„ ์ฝ˜ํ…์ธ ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ์ฃผ๋กœ DB ์„œ๋ฒ„์™€ ๊ฐ™์ด ์ˆ˜ํ–‰๋จ. - Java Web Application ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋ฒ„์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋“ค์ด ์žˆ๋Š”๋ฐ, ์ด๋Ÿฐ ๊ฒƒ๋“ค์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด WAS. WAS(Web Application Server) ๊ฐ€ ํ•˜๋Š” ์ผ 1. servlet ..
list_img
spring๊ณผ springboot
2023.08.21
1. ์Šคํ”„๋ง(Spring) - Java Platform ์„ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์–ดํฌ - ๋™์ ์ธ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์„œ๋น„์Šค ์ œ๊ณต - ์ „์ž ์ •๋ถ€ ํ‘œ์ค€ ํ”„๋ ˆ์ž„์›Œํฌ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ๋กœ ์‚ฌ์šฉ - ํŠน์ง•: ๊ฒฝ๋Ÿ‰ ์ปจํ…Œ์ด๋„ˆ, IoC(Invertion of Control: ์ œ์–ด ์—ญํ–‰), Di(Dependency Injection: ์˜์กด์„ฑ ์ฃผ์ž…), AOP(Aspect-Oriented Programming: ๊ด€์ ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ) 2. ์Šคํ”„๋ง ๋ถ€ํŠธ(Spring Boot) SpringBoot makes it easy(์‰ฝ๊ฒŒ ๋งŒ๋“ ๋‹ค), to create stand-alone(๋‹จ๋…์ ์ธ), production-grade(์ƒ์šฉํ™” ์ˆ˜์ค€์˜) Spring based Applications(์Šคํ”„๋ง ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜) tha..