์ „์ฒด ๊ธ€ 90

Spring Bean / IoC Container / DI

Goal Spring Bean Spring IoC Container Dependency Injection (DI) Constructor Injection Method Injection Setter Injectio Spring Bean Spring Bean ์œผ๋กœ ๋“ฑ๋ก๋œ ํด๋ž˜์Šค๋Š” IoC Contrainer ์— ์˜ํ•ด ์ƒ์„ฑ๋œ Singleton ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, Bean ์œผ๋กœ ๋“ฑ๋ก๋œ ํด๋ž˜์Šค๋งŒ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ†ตํ•ด ์˜์กด์„ฑ์ด ์ฃผ์ž…(Dependency Injection)๋˜์–ด ๊ฐ์ฒด์˜ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹Œ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ด€๋ฆฌํ•˜๋„๋ก ํ•œ๋‹ค. Register Bean @Bean @Bean ์€ @Configuration ์ด ๋ถ™์€ DI ์„ค์ •์šฉ ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์–ด๋…ธํ…Œ์ด์…˜์œผ๋กœ, ๋ฉ”์†Œ๋“œ๋ฅผ ์ด์šฉํ•ด Bean Object ์˜ ์ƒ์„ฑ๊ณผ ์˜์กด ๊ด€๊ณ„..

Programming/Spring 2023.01.21

2022

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

JPA / Persistence Context / Transactional

Goal JDBC Spring Data JPA Persistence Context JDBC? Spring JDBC ๋ž€ Spring Framework ์™€ DB ๊ฐ„ ํ†ต์‹ ์„ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๊ฐœ๋ฐœ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฒค๋”์‚ฌ์˜ ์ œํ’ˆ์— ๊ด€๊ณ„์—†์ด DB ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ค€๋‹ค. ํ•˜์ง€๋งŒ JDBC ๋Š” Persistence Layer ์™€ ๊ธด๋ฐ€ํ•œ ๊ด€๊ณ„๋ฅผ ๋งบ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ Connection ์„ค์ •ํ•˜๊ฑฐ๋‚˜ Statement ๋ฅผ ์ด์šฉํ•ด ์›ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ ํ›„ Statement ๋ฅผ ์ง์ ‘ ๋‹ซ์•„์ค˜์•ผ ํ•˜๋Š” ๋“ฑ์˜ ๋ฌธ์ œ์ ์ด ์•ผ๊ธฐ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ค‘๋ณต ์ฝ”๋“œ์˜ ์žฌ์ƒ์‚ฐ์œผ๋กœ ์ธํ•ด ์œ ์ง€๋ณด์ˆ˜์˜ ๋‚œ์ด๋„๊ฐ€ ์ƒ์Šนํ•˜๊ฒŒ ๋œ๋‹ค. Spring Data JPA ORM(Object Relation Mapper) ์ค‘ ํ•˜๋‚˜๋กœ, ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ Java ์˜ ๊ฐ..

Programming/Spring 2023.01.14

[Effective Java] ์™œ EnumSet ๊ณผ EnumMap ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๊ฐ€

๋“ค์–ด๊ฐ€๊ธฐ ์ „์— ๋ฐฑ๊ธฐ์„ ๋‹˜์˜ [Effective Java] ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๋Š” ์ค‘ ์—ฌ๋Ÿฌ ๊ฐœ์˜ Enum ๊ฐ์ฒด๋ฅผ ๊ฐ€์ง€๊ฑฐ๋‚˜ Enum ๊ฐ์ฒด๋ฅผ Key ๋กœ ๊ฐ€์ง€๋Š” ๊ฒฝ์šฐ ์™œ EnumMap ์ด๋‚˜ EnumSet ์„ ์“ฐ๋Š” ๊ฒƒ์ด ๋‹ค๋ฅธ Map / Set ๊ตฌํ˜„์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํšจ์œจ์ ์ธ์ง€์— ๋Œ€ํ•ด ํ•™์Šตํ•˜๋Š” ๊ณผ์ œ๋ฅผ ๋ฐ›์•˜๋‹ค. ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ์ด๋“ค์ด ๋™์ž‘ํ•˜๋Š” ๋ฐฉ์‹๊ณผ ๊ทธ์— ๋Œ€ํ•œ ์ฐจ์ด์  ๋ฐ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ด์ ์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์™œ ์—ด๊ฑฐ ํƒ€์ž…์„ ์‚ฌ์šฉํ•ด์•ผ ํ• ๊นŒ? Java 1.5 ๋ฒ„์ „ ์ด์ „์—๋Š” ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ƒ์ˆ˜๋ฅผ int ํƒ€์ž…์œผ๋กœ ์ •์˜ํ•˜์—ฌ ์‚ฌ์šฉํ–ˆ๋‹ค. ์ด๋ฅผ ์ •์ˆ˜ ์—ด๊ฑฐ ํŒจํ„ด์ด๋ผ๊ณ  ํ•œ๋‹ค. ๊ณผ๊ฑฐ์˜ ๋ฐฉ์‹์ฒ˜๋Ÿผ int ๋ฅผ ์ด์šฉํ•ด ์ƒ์ˆ˜๋ฅผ ์—ด๊ฑฐํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ์•ผ๊ธฐํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ์ปดํŒŒ์ผ ํƒ€์ž„์—์„œ ํƒ€์ž… ์•ˆ์ „์„ฑ์„ ๋ณด์žฅํ•  ์ˆ˜ ์—†๋‹ค. 2. Name..

Programming/Java 2022.11.20

ํ•จ๊ป˜ ์ž๋ผ๊ธฐ, ๊น€์ฐฝ์ค€ ์ €

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

2021

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

Week 12

Week 12 : ๋ณต์Šต, ๊ฐ์ฒด ์ง€ํ–ฅ, ๋””์ž์ธ ํŒจํ„ด ๋“ฑ โœ๏ธ ์ด์ œ ๋ฉ˜ํ† ๋ง ์ค‘๋ฐ˜์„ ํ–ฅํ•ด ๋‹ฌ๋ ค๊ฐ€๊ณ  ์žˆ๋‹ค. ์ง€๋‚œ ๋‚ ๋“ค์„ ๋˜๋Œ์•„ ๋ณด์•˜์„ ๋•Œ, ๋‚˜๋Š” ์ง€๋‚˜์˜จ ์‹œ๊ฐ„๋งŒํผ ์„ฑ์žฅ ํ–ˆ์„๊นŒ? ์š”์ฆ˜ ๋‹ค์‹œ ๋˜๋ฌป๋Š” ์‹œ๊ฐ„์ด ๋งŽ์•„์ง€๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ณต๋ถ€๋ฅผ ํ•˜๋ฉด ํ•  ์ˆ˜๋ก, ๋‚ด๊ฐ€ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ๋‹ค์‹œ ์ƒ๊ธฐํ•˜๋ฉฐ ์ž… ๋ฐ–์œผ๋กœ ๊บผ๋‚ผ ๋•Œ ๋งˆ๋‹ค ์ž์‹ ๊ฐ์ด ๋–จ์–ด์ง€๋Š” ๊ฒƒ์„ ๋Š๋‚€๋‹ค. (๋”๋‹ ํฌ๋ฃจ๊ฑฐ ํšจ๊ณผ์ธ๊ฐ€?) ์ด ๋ฌด๊ธฐ๋ ฅ์„ ์ด๊ฒจ๋‚ด๋ ค๊ณ  ๋งค์ผ ๋‹ค์งํ•˜์ง€๋งŒ ์‰ฝ๊ฒŒ ์ด๊ฒจ๋‚ด์ง€ ๋ชปํ•˜๋Š” ๋‚ด ์ž์‹ ์ด ํ•œ์‹ฌํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ~ ๋ถ€์ •์ ์ธ ์ƒ๊ฐ์€ ํ•˜์ง€ ์•Š๊ธฐ๋กœ ์˜ค๋ž˜ ์ „ ๋ถ€ํ„ฐ ์•ฝ์† ํ–ˆ์œผ๋‹ˆ๊นŒ ํ•‘ํฌ๋น› ๋ฏธ๋ž˜๋ฅผ ์ƒ๊ฐํ•˜๋ฉฐ ์˜ค๋Š˜ ๋‚˜๋ˆˆ ์ด์•ผ๊ธฐ๋“ค์„ ์ •๋ฆฌํ•ด๋ด์•ผ๊ฒ ๋‹ค! 1. Statement, SQL Injection ์ง€๋‚œ ์ฃผ์ฐจ์—์„œ ํ•ด๋‹น ์ฃผ์ œ์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ–ˆ์ง€๋งŒ, SQL Injection ์— ๋Œ€ํ•œ ..

์‚ถ/F-Lab 2021.07.24

Week 11

Week 11 : Statement, PreparedStatement, MVC, DispatcherServlet โœ๏ธ ๋ฒŒ์จ 7์›” ์ค‘์ˆœ, ์—ดํ•œ ๋ฒˆ์งธ ๋ฉ˜ํ† ๋ง์„ ๋งˆ์ณค๋‹ค. ์ €๋ฒˆ ์ฃผ์™€ ์ด๋ฒˆ ์ฃผ๋Š” ๋ธ”๋กœ๊ทธ๋ž‘ ๋…ธ์…˜์— ์ •๋ฆฌํ•œ ๋‚ด์šฉ๋„ ์—†๊ณ  ์˜ค๋กœ์ง€ ์•„์ดํŒจ๋“œ์—๋‚˜ ๋„์ ๊ฑฐ๋ฆฐ ๋‚ด์šฉ ๋ฐ–์— ์—†์–ด์„œ ๋ฉ˜ํ† ๋ง ์‹œ๊ฐ„์ด ๊ฐ€๊นŒ์›Œ์งˆ ๋•Œ ๋งˆ๋‹ค ๋„ˆ๋ฌด ๊ธด์žฅ ๋๊ณ , ๊ทธ ๋งŒํผ ๊ธด์žฅ ํ–ˆ๋‹ค๋Š” ๊ฑด ๋‚ด๊ฐ€ ์ •ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š”๊ฒŒ ์ ๋‹ค๋Š” ์ด์•ผ๊ธฐ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค. ์ด๋ฒˆ ๋ฉ˜ํ† ๋ง๋„ ์–ด๋–ป๊ฒŒ ์ง€๋‚˜๊ฐ€๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ๋‚ด๊ฐ€ ๊ฒŒ์œผ๋ฅด๊ณ  ๋” ๋…ธ๋ ฅํ•˜์ง€ ๋ชปํ•ด์„œ ์กฐ๊ธˆ ์•„์‰ฌ์šด ์‹œ๊ฐ„์ด์˜€๋‹ค. ๋” ์‹œ๊ฐ„์„ ๋‚ด์„œ ์ดํ•ดํ•˜๋Š” ์‹œ๊ฐ„์„ ๋Š˜๋ ค์•ผ๊ฒ ๋‹ค. ์ด๋ฒˆ ๋ฉ˜ํ† ๋ง ์‹œ๊ฐ„์—๋Š” JSP ๊ด€๋ จํ•œ ๋‚ด์šฉ๋“ค์— ๋Œ€ํ•ด์„œ ์ฃผ๋กœ ์ด์•ผ๊ธฐ ๋‚˜๋ˆ„์—ˆ๋Š”๋ฐ, ํ•ด๋‹น ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค! 1. Statement, PreparedStateme..

์‚ถ/F-Lab 2021.07.16

Week 10

Week 10 : DBMS, Servlet, Session, Cache โœ๏ธ 7์›”์˜ ์ฒซ ์งธ ์ฃผ ๋ฉ˜ํ† ๋ง! ์ด๋ฒˆ ์ฃผ ๊ธฐ๋ก์€ ํ˜„์ƒ์— ์น˜์—ฌ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋‹ค ๋ณด๋‹ˆ ๋ฉ˜ํ† ๋ง ๋‹น์ผ์— ์ž‘์„ฑํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. (์‚ฌ์‹ค ๊ฒŒ์œผ๋ฅธ๊ฑฐ๋‹ค.) ๊ทธ๋ฆฌ๊ณ  JSP ์ฑ…์„ ๋‹ค ์ฝ์–ด๋ณด๋ ค๊ณ  ํ–ˆ์ง€๋งŒ ์ƒ๊ฐ๋ณด๋‹ค ์ดํ•ด๋˜์ง€ ์•Š๋Š” ๋ถ€๋ถ„๋„ ๋งŽ์•„์„œ ๋‹ค ์ฝ์ง€ ๋ชปํ–ˆ๋‹ค. (์ •๋ง ๊ฒŒ์œผ๋ฅธ๊ฑฐ๋‹ค.) ๊ทธ๋ž˜์„œ ๋ฐ˜์„ฑ์˜ ์‹œ๊ฐ„์„ ์กฐ๊ธˆ ๊ฐ€์ง€๊ณ  ๋ฉ˜ํ† ๋งํ•œ ๋‚ด์šฉ์„ ๋Šฆ๊ฒŒ๋‚˜๋งˆ ๊ธฐ๋กํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ธฐ์ดˆ๊ฐ€ ๋˜๋Š” Servlet, DBMS, Session, Cache ๋“ฑ์— ๋Œ€ํ•ด์„œ ๋‹ค์‹œ ์ •๋ฆฌํ•ด๋ณด์ž! 1. JSP Output Buffer JSP ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์š”์ฒญ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ฐ”๋กœ ์‘๋‹ตํ•˜์ง€ ์•Š๊ณ  ๋ฒ„ํผ๋ผ๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ๊ฒฐ๊ณผ๋ฅผ ์Œ“์•„๋‘์—ˆ๋‹ค๊ฐ€ ํ•œ ๋ฒˆ์— ์‘๋‹ตํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•œ..

์‚ถ/F-Lab 2021.07.10

Week 9

Week 9 : ๋„คํŠธ์›Œํฌ, ํ”„๋ก์‹œ, ๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ โœ๏ธ 6์›”์˜ ๋งˆ์ง€๋ง‰ ๋ฉ˜ํ† ๋ง! ์–ด๋Š ์ƒˆ ๋ฒŒ์จ ๋ฉ˜ํ† ๋ง์„ ์‹œ์ž‘ํ•œ์ง€ ๋‘ ๋‹ฌ์ด ์ง€๋‚ฌ๋‹ค. ๋งŽ์€ ๊ฑธ ๋ฐฐ์šด ๊ฒƒ ๊ฐ™์œผ๋ฉด์„œ๋„ ์•„์ง ๋ถ€์กฑํ•˜๋‚˜ ์ ์ด ๋งŽ์€ ๊ฒƒ ๊ฐ™๋‹ค. ์ด๋ฒˆ ์ฃผ ๋ถ€ํ„ฐ ๋ณธ๊ฒฉ์ ์œผ๋กœ JSP ๊ด€๋ จํ•˜์—ฌ ๊ณต๋ถ€๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฃผ๋กœ ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์ด๋‚˜ HTTP ํ†ต์‹ , Servlet ๋“ฑ์„ ๊ณต๋ถ€ํ–ˆ๊ณ , ํ•ด๋‹น ๋‚ด์šฉ์— ๋Œ€ํ•ด์„œ ๋ฉ˜ํ† ๋ง์„ ์ง„ํ–‰ํ–ˆ๋‹ค. ์ง€๊ธˆ๋ถ€ํ„ฐ ๋ฉ˜ํ† ๋งํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค! 1. L4, L7 Switch ๋จผ์ € L4, L7 Switch ๋Š” ์ „์†ก ๊ณ„์ธต์— ์†ํ•˜๋Š” ์Šค์œ„์น˜ ์žฅ๋น„์—์„œ ๋ถ„๋ฆฌ ๋ถ„์‚ฐ ์ž‘์—…์„ ์œ„ํ•œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฐฉ๋ฒ•์„ ํŠน์ • ๊ธฐ์ค€์— ๋”ฐ๋ผ ๋‚˜๋ˆˆ ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์ฆ‰, ์ด๋ฆ„์ด Switch ๋ผ๊ณ  ํ•ด์„œ ํŠน์ •ํ•œ ์žฅ๋น„๊ฐ€ ์กด์žฌํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค! (์ง€๊ธˆ๊นŒ์ง€ L4, L7 Switch ์™€ ๋กœ๋“œ ๋ฐธ..

์‚ถ/F-Lab 2021.07.02