Banner

My Tech Blog (๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ)

์—ฌ๋Ÿฌ๋ถ„๋“ค ์ž…๋ ฅ๋„๊ตฌ Scanner ๋งŽ์ด ์“ฐ์‹œ์ฃ ? ๊ทธ๋Ÿฐ๋ฐ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ํ’€๋‹ค ๋ณด๋ฉด Scanner๋ณด๋‹ค BufferedReader / BufferedWriter์„ ๋” ๋งŽ์ด ์“ฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–ค ์ ์ด ๋” ์ข‹์„๊นŒ์š”?    ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ž…๋ ฅ์€, ํ‚ค๋ณด๋“œ์˜ ์ž…๋ ฅ์ด ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋Š” ์ฆ‰์‹œ ๋ฐ”๋กœ ํ”„๋กœ๊ทธ๋žจ์— ์ „๋‹ฌ๋ฐ˜๋ฉด ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ž…๋ ฅ์€, ํ‚ค๋ณด๋“œ์˜ ์ž…๋ ฅ์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ํ•œ ๋ฌธ์ž์”ฉ ๋ฒ„ํผ๋กœ ์ „์†กํ•œ๋‹ค. ๋ฒ„ํผ๊ฐ€ ๊ฐ€๋“ ์ฐจ๊ฑฐ๋‚˜ ๊ฐœํ–‰ ๋ฌธ์ž๊ฐ€ ๋‚˜ํƒ€๋‚˜๋ฉด ๋ฒ„ํผ์˜ ๋‚ด์šฉ์„ ํ•œ ๋ฒˆ์— ํ”„๋กœ๊ทธ๋žจ์— ์ „๋‹ฌ์ฆ‰, ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๋ชจ์•„์„œ ์ „๋‹ฌ Scanner๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ† ํฐ ๋‹จ์œ„๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ  ๋„์–ด์“ฐ๊ธฐ์™€ ๊ฐœํ–‰๋ฌธ์ž๋ฅผ ๊ฒฝ๊ณ„๋กœ ํ•˜์—ฌ ์ž…๋ ฅ ๊ฐ’์„ ์ธ์‹๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋”ฐ๋กœ ๊ฐ€๊ณตํ•  ํ•„์š”๊ฐ€ ์—†์–ด ํŽธ๋ฆฌํ•˜๋‹ค.BufferedReader์€ ์ž…๋ ฅ ๋ฐ›์€ ๋ฐ์ดํ„ฐ๊ฐ€ St..
์ œ๋‹ˆ Mantra ์† ์š”์ฆ˜ ์˜์–ด ์—ฌ๋Ÿฌ๋ถ„๋“ค ์ œ๋‹ˆ๊ฐ€ ์ƒˆ๋กœ์šด ์‹ฑ๊ธ€์„ ๋ƒˆ์–ด์š”.์ œ๋ชฉ์€ Mantra ์ž…๋‹ˆ๋‹ค. ์ƒ์†Œํ•œ ๋‹จ์–ด์ด์‹คํ…๋ฐ์š”  Mantra๋Š” ์˜์–ด๋กœ ๊ธฐ์šด, ์—๋„ˆ์ง€, ์•„์šฐ๋ผ ์ด๋Ÿฐ ๋œป์ด์˜ˆ์š” ใ…Žใ…Ž์ž์‹ ๋งŒ์˜ ๋…ํŠนํ•œ ๋ถ„์œ„๊ธฐ, ์กด์žฌ๊ฐ ์ด๋Ÿฐ๊ฑฐ์ฃ . ๊ฐ€์‚ฌ์—์„œ ๋‚˜์˜ค๋Š” It's that pretty girl mantra๋Š” '์˜ˆ์œ ์—ฌ์„ฑ์˜ ๊ธฐ์šด' ์ด๋ผ๋Š” ๋œป์ด์˜ˆ์š”. ๊ฐ€์‚ฌ ์ค‘์— So pretty it wants you wanna swing both ways๋ผ๋Š” ๊ฐ€์‚ฌ๊ฐ€ ์žˆ๋Š”๋ฐ์š” ใ…‹ใ…‹ใ…‹ * Swing both ways ๋ฅผ ๋ง ๊ทธ๋Œ€๋กœ ํ•ด์„ํ•˜๋ฉด์•ผ๊ตฌ์—์„œ ์–‘์ชฝ์œผ๋กœ ์Šค์œ™ํ•˜๋Š” ๊ฑธ ๋œปํ•˜์ฃ  ๊ทผ๋ฐ ์Šฌ๋žญ์—์„œ๋Š” ์ข€ ๋‹ค๋ฅธ ๋œป์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์š”Bat for the other team ์ด๋ผ๋Š” ๋œป์ด๋ž‘ ๋น„์Šทํ•œ๋ฐ์š”๋™์„ฑ์• ๋ฅผ ๋œปํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋„ˆ๋ฌด ์ด๋ป์„œ ์—ฌ์ž์ธ ๋„ˆ๋„ ๋‚  ์ข‹์•„ํ• ..
๋‚˜์ฃผ ํ˜์‹ ๋„์‹œ ํŒ”๊ฐ๋„์ตœ์–„๋Ÿฌ๋ฏธ์ด๋ž‘ ๋‹ค๋…€์™”์ˆจ๋‹ˆ๋‹ค  ๋‹ญ๊ณ ๊ธฐ๋ฅผ ๊ตฌ์›Œ๋จน์—ˆ์Šด๋‹ˆ๋‹ค....์กด๋ง›ํƒฑ ๊ฝˆ๋ฆฌ๊ณ ์ถ”๋Š” ๊ธฐ๋ณธ์œผ๋กœ ๋‚˜์˜ค๊ณ  ํŒŒ๋Š” ์ฒœ์›์ฃผ๊ณ  ํ•œ์ ‘์‹œ ์ถ”๊ฐ€ํ•œ๊ฑฐ์˜ˆ์š”๊ฐ„์žฅ๋‹ญ๊ฐˆ๋น„ 2์ธ๋ถ„ ๊ธฐ๋ณธ์œผ๋กœ ์ฃผ๋ฌธํ•ด์•ผ ํ•˜๋ฏ€ ํฌ~ ์˜›๋‚ ์— ๋Œ€ํ•™๊ต ๋‹ค๋‹๋•Œ ์‚ฌ๋จน๋˜ ๋‹ญ๊ผฌ์น˜ ๋ง› ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹  ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹์ฉ์ฉ๋ฐ•์‚ฌ๋ผ ์‚ฌ์ง„์€ ์ด์˜๊ฒŒ ๋ชป์ฐ์Œ๊ด€์ž ํ•œ ์ ‘์‹œ ์‹œ์ผฐ์Šต๋Šฌ๋‹ค...์Œ์‹ ์‚ฌ์ง„ ์ฐ์œผ์‹ค ๋ถ„์€ ๋ฌด์กฑ๊ถŒ ๊ด€์ž๋ฅผ ์‹œํ‚ค์„ธ์š” ใ…‹ใ…‹ใ…‹ใ…‹  ๋‹ญ๊ณ ๊ธฐ ์ž˜๋ž์„ ๋•Œ ์•ˆ์ด ํ•˜์–€์ƒ‰์ด๋ฉด ์ต์€๊ฑฐ๋ผ๊ตฌ ํ•ฉ๋‹ˆ๋‹ค๋œ์žฅํ•ด๋ฌผ๋ผ๋ฉด ์ฃผ๋ฌธํ–ˆ์Šต๋‹ˆ๋”๋‹ค๋จน์œผ๋ฉด ๋ถˆ ๋นผ์ฃผ๊ณ  ๊ทธ ์ž๋ฆฌ์— ๋ผ๋ฉด ์˜ฌ๋ ค ์ค๋‹ˆ๋‹ค์ƒˆ์šฐ3๋งˆ๋ฆฌ๋ž‘ ์ˆœ๋‘๋ถ€, ์ด์œ ๊ฒŒํ•œ๋งˆ๋ฆฌ ๋“ค์–ด์žˆ์›€  ์•„๋‹ˆ ๊ทผ๋ฐ ... ๊ฐ€๋งŒํžˆ ๋ณด๋‹ˆ๊นŒ ์œ„์— ์„๊ธฐ์‹œ๋Œ€ ๊ฐ™์€ ๋ง์น˜๊ฐ€ ๋‹ฌ๋ ค ์žˆ์›€ใ…‹ใ…‹ใ…‹ใ…‹ ๋ญ”๊ฐ€ ํ–ˆ๋”๋‹ˆ ๋ณ‘๋”ฐ๊ฐœ ์˜€์Œ  ๋‹ค ๋จน๊ณ  ๋ฐ–์— ๋‚˜์™”๋Š”๋ฐ ์˜ค๋งˆ๊ฐ€์‰ฌ๊ฑด๋„ˆํŽธ์— ๋„ˆ๋ฏ€๋‚˜ ์•„๋ฆ„๋‹ค์šด ๋งฅ์ฃผ์ง‘์ด๋ฌด์ง€๊ฐœ ๋งฅ์ฃผ๋Š” ..
โค๏ธ ๋ฌธ์ œ์„ค๋ช…๋‹ค์Œ์€ ์‹๋‹น ๋ฆฌ๋ทฐ ์‚ฌ์ดํŠธ์˜ ํšŒ์› ์ •๋ณด๋ฅผ ๋‹ด์€ MEMBER_PROFILE ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. MEMBER_PROFILE ํ…Œ์ด๋ธ”์€ ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH๋Š” ํšŒ์› ID, ํšŒ์› ์ด๋ฆ„, ํšŒ์› ์—ฐ๋ฝ์ฒ˜, ์„ฑ๋ณ„, ์ƒ๋…„์›”์ผ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.   ๐Ÿ’› ๋ฌธ์ œMEMBER_PROFILE ํ…Œ์ด๋ธ”์—์„œ ์ƒ์ผ์ด 3์›” ์ธ ์—ฌ์„ฑ ํšŒ์›์˜ ID, ์ด๋ฆ„, ์„ฑ๋ณ„, ์ƒ๋…„์›”์ผ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ NULL์ธ ๊ฒฝ์šฐ๋Š” ์ถœ๋ ฅ๋Œ€์ƒ์—์„œ ์ œ์™ธ์‹œ์ผœ ์ฃผ์‹œ๊ณ , ๊ฒฐ๊ณผ๋Š” ํšŒ์›ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”. ๐Ÿ’š ์ถœ๋ ฅ ์˜ˆ์‹œ โš ๏ธ์ฃผ์˜์‚ฌํ•ญโš ๏ธDATE_OF_BIRTH์˜ ๋ฐ์ดํŠธ ํฌ๋งท์ด ์˜ˆ์‹œ์™€ ๋™์ผํ•ด์•ผ ์ •๋‹ต์ฒ˜๋ฆฌ ๋ฉ๋‹ˆ๋‹ค. ๐Ÿ’œ ํ’€์ด ์ฒซ๋ฒˆ์งธ ์‹œ๋„ ๐Ÿ™…๐Ÿป‍โ™€..
โค๏ธ ๋ฌธ์ œ์„ค๋ช…ANIMAL_INS ํ…Œ์ด๋ธ”์€ ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋™๋ฌผ์˜ ์ •๋ณด๋ฅผ ๋‹ด์€ ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. ANIMAL_INS ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋Š” ๊ฐ๊ฐ ๋™๋ฌผ์˜ ์•„์ด๋””, ์ƒ๋ฌผ ์ข…, ๋ณดํ˜ธ ์‹œ์ž‘์ผ, ๋ณดํ˜ธ ์‹œ์ž‘ ์‹œ ์ƒํƒœ, ์ด๋ฆ„, ์„ฑ๋ณ„ ๋ฐ ์ค‘์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๐Ÿ’› ๋ฌธ์ œ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋ชจ๋“  ๋™๋ฌผ์˜ ์ด๋ฆ„๊ณผ ๋ณดํ˜ธ ์‹œ์ž‘์ผ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ANIMAL_ID ์—ญ์ˆœ์œผ๋กœ ๋ณด์—ฌ์ฃผ์„ธ์š”.  ๐Ÿ’š ์ถœ๋ ฅ ์˜ˆ์‹œSQL์„ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€‹๐Ÿ’œ ํ’€์ด- ์ง€๊ธˆ๊นŒ์ง€ ํ‘ผ ๊ฒƒ ์ค‘์— ์ œ์ผ ์‰ฌ์šด ๋ฌธ์ œ- ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฆ„์ด๋ž‘ ๋ณดํ˜ธ์‹œ์ž‘์ผ ๊ฒ€์ƒ‰ํ•˜๋ฉด์„œ ์ •๋ ฌ๋งŒ ๋™๋ฌผ..
โค๏ธ ๋ฌธ์ œ์„ค๋ช…๋‹ค์Œ์€ ์–ด๋Š ์˜๋ฅ˜ ์‡ผํ•‘๋ชฐ์˜ ์˜จ๋ผ์ธ ์ƒํ’ˆ ํŒ๋งค ์ •๋ณด๋ฅผ ๋‹ด์€ ONLINE_SALE ํ…Œ์ด๋ธ” ์ž…๋‹ˆ๋‹ค. ONLINE_SALE ํ…Œ์ด๋ธ”์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ์œผ๋ฉฐ ONLINE_SALE_ID, USER_ID, PRODUCT_ID, SALES_AMOUNT, SALES_DATE๋Š” ๊ฐ๊ฐ ์˜จ๋ผ์ธ ์ƒํ’ˆ ํŒ๋งค ID, ํšŒ์› ID, ์ƒํ’ˆ ID, ํŒ๋งค๋Ÿ‰, ํŒ๋งค์ผ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋™์ผํ•œ ๋‚ ์งœ, ํšŒ์› ID, ์ƒํ’ˆ ID ์กฐํ•ฉ์— ๋Œ€ํ•ด์„œ๋Š” ํ•˜๋‚˜์˜ ํŒ๋งค ๋ฐ์ดํ„ฐ๋งŒ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.   ๐Ÿ’› ๋ฌธ์ œONLINE_SALE ํ…Œ์ด๋ธ”์—์„œ ๋™์ผํ•œ ํšŒ์›์ด ๋™์ผํ•œ ์ƒํ’ˆ์„ ์žฌ๊ตฌ๋งคํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌํ•˜์—ฌ, ์žฌ๊ตฌ๋งคํ•œ ํšŒ์› ID์™€ ์žฌ๊ตฌ๋งคํ•œ ์ƒํ’ˆ ID๋ฅผ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๊ฒฐ๊ณผ๋Š” ํšŒ์› ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์‹œ๊ณ  ํšŒ์› ID๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ƒํ’ˆ ID๋ฅผ..
โœ… List๋ฅผ map์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ด์œ  db๋‚˜ API์—์„œ ๋ฐ์ดํ„ฐ ๋ฐ›์•„์™€์„œ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์†๋„๋‚˜ ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ map์ด ๋น ๋ฆ„์ฆ‰, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋‚˜, ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด์„œ ํ•„์š”ํ•จ.์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” map์€ ํ•ด์‹œ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘๋™ํ•˜๋ฉฐ ํ‚ค,๊ฐ’ ์Œ ํ˜•์‹์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ.  JSON์ด๋ž‘ ๋น„์Šทํ•œ ํ˜•์‹์ด์ง€๋งŒ ์ž๋ฐ”์˜ map์€ ํ‚ค๊ฐ’ ํƒ€์ž…์„ ์ œ๋„ค๋ฆญ์œผ๋กœ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•˜๊ณ Map์ฒ˜๋Ÿผ ๋ช…ํ™•ํ•œ ํƒ€์ž…์„ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•จ. [JSON]{ "name": "Alice", "age": 30, "isEmployee": true} [JAVA map]Map person = new HashMap();person.put("name", "Alice");person.put("age", 30);person.put("isEmployee", ..
♥๏ธ ์ž๋ฐ” list๋ฅผ map์œผ๋กœ ๋ณ€ํ™˜ (Stream)๐Ÿป ํŒ”๊ฐ๋„, ๋ฌด์ง€๊ฐœ๋งฅ์ฃผ๐Ÿ‹‍๐ŸŸฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค SQL 2๋ฌธ์ œ
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (25 Page)
์ƒ๋‹จ์œผ๋กœ