๐Ÿ–ฅ๏ธ

Connection Pool ์ด๋ž€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ํŒจํ„ด์ด๋‹ค. ๋ฏธ๋ฆฌ Connection ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ Pool ๋˜๋Š” Container(tomcat)์— ๋ฐฐ์น˜ํ•œ๋‹ค. Application์—์„œ Connection ๊ฐ์ฒด๊ฐ€ ํ•„์š”ํ•  ๋•Œ, ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋Œ€์‹  Pool์—์„œ ํ•ด๋‹น ๊ฐ์ฒด๋ฅผ ๊ฐ€์ ธ์™€ ์‚ฌ์šฉํ•˜๊ณ  ์žฌ์‚ฌ์šฉ์„ ์œ„ํ•ด์„œ ์‚ฌ์šฉ๋œ ๊ฐ์ฒด๋Š” Pool์— ๋ฐ˜๋‚ฉํ•œ๋‹ค. ์žฅ์  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— Connection์„ ์ƒ์„ฑํ•  ๋•Œ ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„ ๋ฐ ์ž์›์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. Connection ์ˆ˜๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์–ด ๊ณผ๋‹คํ•œ ์ ‘์†์œผ๋กœ ์ธํ•œ ์„œ๋ฒ„ ์ž์› ๊ณ ๊ฐˆ์„ ์˜ˆ๋ฐฉํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์—์„œ Conncetion์„ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์„ ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
MVC ํŒจํ„ด์ด๋ž€ Model, View, Controller์˜ ์•ฝ์ž์ด๋‹ค. Model ๋ชจ๋ธ์€ ์–ด๋–ค ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋งํ•˜๋ฉฐ, ํ‘œ์‹œ ํ˜•์‹์— ์˜์กดํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ชจ๋ธ์˜ ์ƒํƒœ์— ๋ณ€ํ™”๊ฐ€ ์žˆ์„ ๋•Œ ์ปจํŠธ๋กค๋Ÿฌ์™€ ๋ทฐ์— ์ด๊ฒƒ์„ ํ†ต๋ณดํ•œ๋‹ค. ์–ด๋–ค MVC ํŒจํ„ด์—์„œ๋Š” ํ†ต๋ณด๊ฐ€ ์•„๋‹Œ ๋ทฐ๋‚˜ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์ง์ ‘ ๋ชจ๋ธ์˜ ์ƒํƒœ๋ฅผ ์ฝ์–ด์˜ค๊ธฐ๋„ ํ•œ๋‹ค. View ๋ทฐ๋Š” ์•ฑ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐฉ์‹์„ ์ •์˜ํ•œ๋‹ค. -> ์‚ฌ์šฉ์ž๊ฐ€ ๋ณผ ๊ฒฐ๊ณผ๋ฌผ์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋ธ๋กœ๋ถ€ํ„ฐ ์ •๋ณด๋ฅผ ์–ป์–ด์˜จ๋‹ค. MVC์—์„œ ๋ชจ๋ธ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ทฐ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. Controller MVC์˜ ๋ทฐ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์˜ ์ƒํƒœ๋ฅผ ๋ฐ”๊พผ๋‹ค. ์ปจํŠธ๋กค๋Ÿฌ๋Š” ๋ชจ๋ธ์— ๋ช…๋ น์„ ๋ณด๋‚ด ๋ชจ๋ธ์˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค. ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ๊ด€๋ จ๋œ ๋ทฐ์— ๋ช…๋ น์„ ๋ณด๋‚ด ๋ชจ๋ธ์˜..
์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ• ๋•Œ ์ƒ๋‹จ์— @๋ฅผ ๋ถ™์ธ ๊ฒฝ์šฐ๋“ค์ด ์žˆ๋‹ค.(ex. @Override) ์ด๋ ‡๊ฒŒ ํ”„๋กœ๊ทธ๋žจ ์ž์ฒด์—” ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์ง€๋งŒ ํŠน๋ณ„ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์„ ์• ๋„ˆํ…Œ์ด์…˜์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ด ๊ธ€์—์„  Servlet์˜ ํŠน๋ณ„ํ•œ ์• ๋„ˆํ…Œ์ด์…˜์„ ์•Œ์•„๋ณผ ๊ฒƒ์ด๋‹ค. @WebServlet ๋” ์ด์ƒ Web.xmlํŒŒ์ผ์— , ์„ ์“ฐ์ง€ ์•Š์•„๋„ ๋œ๋‹ค. @WebServlet(name = "fileUploadServlet", urlPatterns = "/file/fileUpload") public class FileUploadServlet extends HttpServlet { // ... } ์ด๋Ÿฐ์‹์œผ๋กœ ์ž‘์„ฑํ•˜๋ฉด ์™„๋ฒฝํ•˜๊ฒŒ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋‹ค. context-param์˜ ๊ธฐ๋Šฅ๋„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. @WebServlet( name = "loginServle..
์„œ๋ธ”๋ฆฟ์˜ ์ƒ๋ช…์ฃผ๊ธฐ(Life Cycle)๋Š” ์„œ๋ธ”๋ฆฟ์ด ์–ด๋–ป๊ฒŒ ์ƒ์„ฑ๋˜๊ณ  ์ดˆ๊ธฐํ™”๋˜๋ฉฐ, ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ์‘๋‹ตํ•˜๊ณ , ์ข…๋ฃŒ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ๋‹จ๊ณ„์ ์ธ ๊ณผ์ •์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” ์„œ๋ธ”๋ฆฟ์˜ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋ผ์ดํ”„์‚ฌ์ดํด ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๊ฐ ๋‹จ๊ณ„์—์„œ ํŠน์ • ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. Servlet Servlet์ด๋ž€ Java๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์  ์›น ์ฝ˜ํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์„œ๋ฒ„ ์ธก ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ, ์‰ฝ๊ฒŒ ๋งํ•ด์„œ Java๋กœ ๋งŒ๋“  CGI ํ”„๋กœ๊ทธ๋žจ ๊ฐ™์€ ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ๊ตฌ์กฐ Servlet Container ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์ด ์ฒ˜์Œ ๋“ค์–ด์˜ค๋ฉด ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” ํ•ด๋‹น ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.์ด๋•Œ, ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๊ฐ€ ํ˜ธ์ถœ๋˜๊ณ  ์„œ๋ธ”๋ฆฟ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ดˆ๊ธฐํ™”๋œ๋‹ค. 1. init ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ: ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” init ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜..
ํ˜ธ์ด์ŠคํŒ…์ด๋ž€ ํ˜ธ์ด์ŠคํŒ…์ด๋ž€ ์„ ์–ธ๋œ ํ•จ์ˆ˜๋‚˜ ๋ณ€์ˆ˜์˜ ์„ ์–ธ๋ฌธ์„ ์œ ํšจ ๋ฒ”์œ„์˜ ์ตœ์ƒ๋‹จ์œผ๋กœ ๋Œ์–ด์˜ฌ๋ฆฌ๋Š” ํ–‰์œ„๋ฅผ ๋งํ•œ๋‹ค. ์ฃผ์˜ํ•  ์ ์€ ์‹ค์ œ๋กœ ์ฝ”๋“œ๊ฐ€ ๋Œ์–ด์˜ฌ๋ ค์ง€๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ parser๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ๋Œ์–ด์˜ฌ๋ ค ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. //๋ณ€์ˆ˜ console.log(redColor); //๋ณ€์ˆ˜์— ํ•จ์ˆ˜๋ฅผ ํ• ๋‹น console.log(blueColor()); //function console.log(greenColor()); // var ํ˜ธ์ด์ŠคํŒ… ์˜ํ–ฅ๋ฐ›์Œ var redColor="red"; //์ด๋ฆ„์ด ์—†๋Š” ํ•จ์ˆ˜ ( ํ˜ธ์ด์ŠคํŒ… ์˜ํ–ฅ ์•ˆ ๋ฐ›์Œ) var blueColor=function(){ return "blue"; } //์ด๋ฆ„์ด ์žˆ๋Š” ํ•จ์ˆ˜ (ํ˜ธ์ด์ŠคํŒ… ์˜ํ–ฅ ๋ฐ›์Œ) function greenColor(){ return "gree..
DDL(๋ฐ์ดํ„ฐ ์ •์˜์–ด) ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์ง€์šฐ๋Š” ๊ตฌ๋ฌธ์„ ๋งํ•œ๋‹ค. CREATE ๋ฆด๋ ˆ์ด์…˜(ํ…Œ์ด๋ธ”), ๋ทฐ, ์ธ๋ฑ์Šค, ์ €์žฅ, ํ”„๋กœ์‹œ์ € ๋“ฑ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. DROP ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•œ๋‹ค. ALTER ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์ฒด๋ฅผ ์ˆ˜์ •ํ•œ๋‹ค. TRUNCATE ํ…Œ์ด๋ธ” ๋‚ด ๋ฐ์ดํ„ฐ๋ฅผ ์™„์ „ ์‚ญ์ œํ•œ๋‹ค. DML(๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด) ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ/๊ฒ€์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น ๋˜๋Š” ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ์— ๋ณ€ํ˜•(์‚ฝ์ž…, ์ˆ˜์ •, ์‚ญ์ œ)๋ฅผ ๊ฐ€ํ•˜๋Š” ์งˆ์˜์–ด๋ฅผ ๋งํ•œ๋‹ค. SELECT ๊ด€๊ณ„ ๋Œ€์ˆ˜์—์„œ ํ”„๋กœ์ ์…˜ ์—ฐ์‚ฐ๊ณผ ์ผ์น˜, ๊ฒฐ๊ณผ์— ๋‚˜ํƒ€๋‚  ์†์„ฑ์„ ๋‚˜์—ดํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. ์‰ฝ๊ฒŒ๋งํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ์—ญํ• ์ด๋‹ค. all ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋Š”๋ฐ, ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ธฐ๋ณธ์ด๋‹ค. ๋งŒ์•ฝ ์ค‘๋ณต์ด ์—†์–ด์•ผ ํ•˜๋Š” ๊ฒฐ๊ณผ ์ง‘ํ•ฉ ์ฟผ๋ฆฌ์ธ ๊ฒฝ์šฐ์— DIS..
์นด๋ฅด๋…ธ๋„
'๐Ÿ–ฅ๏ธ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก