๐Ÿ“† Today I Learned(๊ฐœ๋ฐœ์–ธ์–ดํ•™์Šต)

    [SPRING] Spring Framework๋ž€?

    ์„ค๋ช… : ์Šคํ”„๋ง์€ ์ž๋ฐ” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ฐœ๋ฐœ์„ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฐ”ํƒ•์ด ๋˜๋Š” ํ‹€๊ณผ ๊ณตํ†ต ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ชจ๋ธ, ๊ธฐ์ˆ  API ๋“ฑ์„ ์ œ๊ณตํ•ด์ค€๋‹ค. ์Šคํ”„๋ง์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„  ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•๊ณผ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •์ •๋ณด๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„์•ผ ํ•œ๋‹ค. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ ( ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ธฐ๋ณธ ํ‹€ ) ์Šคํ”„๋ง ๋Ÿฐํƒ€์ž„ ์—”์ง„(์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…์ŠคํŠธ)์„ ์˜๋ฏธํ•œ๋‹ค. ์„ค์ •์ •๋ณด๋ฅผ ์ฐธ๊ณ ๋กœ ํ•ด์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์„ฑํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค. ๋…๋ฆฝ์ ์œผ๋กœ ๋™์ž‘ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์›น ๋ชจ๋“ˆ์—์„œ ๋™์ž‘ํ•˜๋Š” ์„œ๋น„์Šค๋‚˜ ์„œ๋ธ”๋ฆฟ์œผ๋กœ ๋“ฑ๋กํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. IoC/DI, ์„œ๋น„์Šค ..

    IN ๋ฌธ์„ ํ™œ์šฉํ•œ LIKE ์‚ฌ์šฉ

    ๊ฐœ์š” : ํ…Œ์ด๋ธ”์—์„œ 'LIKE'์™€ 'IN'์„ ์‚ฌ์šฉํ•ด ๋‹ค์ค‘ ์กฐ๊ฑด์„ ๊ฑธ์–ด ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋ ค๊ณ  ํ•˜์˜€์œผ๋‚˜ ์ฟผ๋ฆฌ๋ฌธ์ด ์‹คํ–‰๋˜์ง€ ์•Š์Œ 'LIKE'๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌ๋ฌธ์„ ์ž‘์„ฑํ•˜์ž๋‹ˆ ์กฐ๊ฑด๋ณ„๋กœ ๊ณ„์† ์ž‘์„ฑํ•ด์•ผํ•ด์„œ ์“ธ๋ฐ์—†์ด ๊ธธ์–ด์ง€๊ธฐ๋•Œ๋ฌธ์— 'IN'์„ ๊ฐ™์ด ์ด์šฉํ•  ์ˆ˜ ์—†์„๊นŒ ์ƒ๊ฐํ–ˆ๋‹ค. ์•„๋ž˜๋Š” ์‹คํ–‰๋˜์ง€ ์•Š์€ ์ฟผ๋ฆฌ๋ฌธ์˜ ์˜ˆ์‹œ์ด๋‹ค. EX) SELECT * FROM [ํ…Œ์ด๋ธ”๋ช…] WHERE [์ปฌ๋Ÿผ๋ช…] LIKE IN ('[%์กฐ๊ฑด%]', '[%์กฐ๊ฑด%]', '[%์กฐ๊ฑด%]'); ํ•ด๊ฒฐ๋ฐฉ๋ฒ• : 'REGEXP_LIKE'๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๋Š”๋ฐ ์ •๊ทœ์‹์„ ์‚ฌ์šฉํ•˜๋Š”? 'LIKE' ์กฐ๊ฑด์ ˆ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋ ๊ฒƒ๊ฐ™๋‹ค. ์•„๋ž˜๋Š” ์‹คํ–‰๋˜๋Š” ์ฟผ๋ฆฌ๋ฌธ์ด๋‹ค. SELECT * FROM [ํ…Œ์ด๋ธ”๋ช…] WHERE REGEXP_LIKE( [ํ•„๋“œ๋ช…], '[์กฐ๊ฑด] | [์กฐ๊ฑด] | [์กฐ๊ฑด]' )..

    LONGํƒ€์ž… ์ปฌ๋Ÿผ์„ ํฌํ•จํ•œ ํ…Œ์ด๋ธ” ๋ณต์‚ฌ(๋ฐฑ์—…ํ…Œ์ด๋ธ”์ƒ์„ฑ)

    ๊ธฐ์กด ํ…Œ์ด๋ธ” ๋ณต์‚ฌ๋Š” CREATE TABLE [์ƒˆ๋กœ์ƒ์„ฑ๋ ํ…Œ์ด๋ธ”๋ช…] AS SELECT * FROM [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…] WHERE 1=1; ๋กœ๋„ ๊ฐ€๋Šฅํ–ˆ์ง€๋งŒ ๊ธฐ์กดํ…Œ์ด๋ธ”์ด LONGํƒ€์ž… ์ปฌ๋Ÿผ์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ๋ณต์‚ฌํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ ๋‚˜๋Š” SQLPLUS๋ฅผ ํ™œ์šฉํ•œ COPY๋ฌธ์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. 1. ๋จผ์ € ํ„ฐ๋ฏธ๋„ ํ™˜๊ฒฝ์—์„œ sqlplus์— ์ ‘์†ํ•œ๋‹ค. (์œˆ๋„์šฐ ํ™˜๊ฒฝ์˜ ๊ฒฝ์šฐ์ž„) ๋”๋ณด๊ธฐ C:\[ํ•ด๋‹น๊ฒฝ๋กœ]>sqlplus UserId/UserPw 2. ์ ‘์†๋๋‹ค๋Š” ์•ˆ๋‚ด ํ™•์ธ 3. COPY FROM UserId/UserPw@sid TO UserId/UserPw@sid CREATE [๋ฐฑ์—…ํ…Œ์ด๋ธ”๋ช…] USING SELECT * FROM [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…] 4. ์ฟผ๋ฆฌ๋ฌธ ์‹คํ–‰ 5. ์™„๋ฃŒ ์•ˆ๋‚ด ํ™•์ธ 6. sqlplus ..

    ๋ชจ๋ฐ”์ผ ์›น ํฐํŠธ ํฌ๊ธฐ ์ž๋™์กฐ์ • ๋ฌธ์ œ (text-size-adjust)

    PCํ™”๋ฉด ๊ฐœ๋ฐœ ํ›„ ๊ทธ ํ™”๋ฉด์„ ๋ชจ๋ฐ”์ผ๋กœ ์—ด์—ˆ์„ ๋•Œ ๊ธฐ์กด text์˜ ๋น„์œจ์ด ์œ ์ง€๋˜์ง€ ์•Š๊ณ  ํฌ๊ธฐ๊ฐ€ ์ปค์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์›น ์‚ฌ์ดํŠธ์˜ ๊ฒฝ์šฐ ํ™”๋ฉด๋น„์œจ์— ๋งž๊ฒŒ ์š”์†Œ๋“ค์„ ์ž๋™ ์กฐ์ ˆํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์–ด์„œ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ์ ์ด ๋ฐœ์ƒํ•œ๋“ฏํ•˜๋‹ค. ์• ์ดˆ์— ์™œ ๋ชจ๋ฐ”์ผ ๋ฐ˜์‘ํ˜•์œผ๋กœ ๊ฐœ๋ฐœํ•˜์ง€ ์•Š์•˜๋Š”์ง€๋Š” ์˜๋ฌธ์ด ๋“ค์ง€๋งŒ.. ๋‹คํ–‰ํžˆ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜๋‹ค. ๋ธ”๋กœ๊ทธ ์ฃผ์ธ๋ถ„์˜ ์ง€์‹๊ณต์œ ์— ๊ฐ์‚ฌ๋ฅผ.. ์ฐพ์€ ๋‚ด์šฉ ๋ชจ๋ฐ”์ผ ์›น ๊ฐœ๋ฐœ ์‹œ, ํŠน์ • ์‚ฌ์ด์ฆˆ ์ด์ƒ์˜ ๋ชจ๋ฐ”์ผ ํ™”๋ฉด์—์„œ font-size๊ฐ€ ํฌ๊ฒŒ ๋ณด์ด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์–ด์š”. ์•„์ดํฐ์˜ ๊ฒฝ์šฐ ๋ทฐํฌํŠธ๊ฐ€ ๋ณ€๊ฒฝ์ด ๋˜๋ฉด ์ž๋™์œผ๋กœ ํฐํŠธ ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. (ex IOS iphone8+, X์—์„œ ํฐํŠธ ํฌ๊ธฐ๊ฐ€ ์ปค์ง/ ์•ˆ๋“œ๋กœ์ด๋“œ๋Š” ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์•„์š”.) โ€‹ ์ด๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ด text-size-adjust ์ž…๋‹ˆ๋‹ค. ..

    [ORACLE DB] VARCHAR2ํƒ€์ž… CLOBํƒ€์ž…์œผ๋กœ ๋ณ€๊ฒฝ

    โ€ป ๋ณ€๊ฒฝํ•  ์ปฌ๋Ÿผ์ด ํฌํ•จ๋œ ํ…Œ์ด๋ธ” ์ž์ฒด๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• 1. ๋ฐฑ์—…ํ…Œ์ด๋ธ” ์ƒ์„ฑ ํ›„ ๊ธฐ์กดํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ ์˜ฎ๊ธฐ๊ธฐ CREATE TABLE [๋ฐฑ์—…ํ…Œ์ด๋ธ”๋ช…] AS SELECT * FROM [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…]; 2. ๊ธฐ์กดํ…Œ์ด๋ธ” ์‚ญ์ œ DROP TABLE [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…]; 3. ํ…Œ์ด๋ธ” ์žฌ์ •์˜ ํ›„ ์ƒ์„ฑ CREATE TABLE [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…] ( [์ปฌ๋Ÿผ๋ช…] [๋ฐ์ดํ„ฐํƒ€์ž…] , [์ปฌ๋Ÿผ๋ช…] [๋ฐ์ดํ„ฐํƒ€์ž…] , [์ปฌ๋Ÿผ๋ช…] [๋ฐ์ดํ„ฐํƒ€์ž…] , [์ปฌ๋Ÿผ๋ช…] [๋ฐ์ดํ„ฐํƒ€์ž…] ); 4. ์žฌ์ •์˜ํ•œ ํ…Œ์ด๋ธ”์— ๋ฐฑ์—…ํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ ์‚ฝ์ž… INSERT INTO [๊ธฐ์กดํ…Œ์ด๋ธ”๋ช…] SELECT * FROM [๋ฐฑ์—…ํ…Œ์ด๋ธ”๋ช…]; โ€ป ๋ณ€๊ฒฝํ•  ์ปฌ๋Ÿผ ์ž์ฒด๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• 1. ๋ณ€๊ฒฝํ•˜๋ ค๋Š” ํ…Œ์ด๋ธ”์— ์ž„์‹œ CLOB์ปฌ๋Ÿผ ์ถ”๊ฐ€ ALTER TABLE [ํ…Œ์ด๋ธ”๋ช…] ADD ( [์ปฌ๋Ÿผ๋ช…] [CL..

    Day07(el)array, collection

    05array.jsp ${i } ${st.count } 06collection.jsp ์ด๋ฆ„ : ${user.userName }, ID : ${user["userId"] }, pass : ${user.userPass }, role : ${user.userRole } ${entry.key } ${entry.value } ์ด๋ฆ„ : ${entry.value.userName }

    Day07(el)๊ตฌ๊ตฌ๋‹จ, ๋ณ„์ฐ๊ธฐ

    04gugu.jsp ${k} ๋‹จ ${j} * ${i} = ${(i*j) } ์ง์ˆ˜๋‹จ ${k} ๋‹จ ${j} * ${i} = ${(i*j) } 04star.jsp *

    Day07(jstl)set, if, choose, for

    1. JSTL์ด๋ž€? ์ผ๋ฐ˜์ ์œผ๋กœ ์•Œ๊ณ ์žˆ๋Š” JSTL์ด๋ž€ JSTL + EL์˜ ์กฐํ•ฉ์„ ๋งํ•œ๋‹ค. HTML ์ฝ”๋“œ ๋‚ด์— java ์ฝ”๋“œ์ธ ์Šคํฌ๋ฆฝํ‹€๋ฆฟ ๋ฅผ ${student}๋กœ, ๋ฌธ์„ , ๋ฌธ์„ ๋กœ ๋Œ€์ฒดํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. 01set.jsp ${aa } ${b } set์„ ํ™œ์šฉํ•ด์„œ jsp์—์„œ ์‚ฌ์šฉํ•  ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ํƒœ๊ทธ๋ฅผ ์ฝ”์–ดํƒœ๊ทธ๋ผ๊ณ  ํ•˜๋Š” ๋ฐ, ์ฝ”์–ดํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ณ€์ˆ˜ ์„ค์ •์ด๋‚˜ if-else์™€ ๊ฐ™์€ ๋…ผ๋ฆฌ ์ฒ˜๋ฆฌ์— ์‚ฌ์šฉ๋˜๋Š” ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ํƒœ๊ทธ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ๋˜ํ•œ ์ฝ”์–ด ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด jspํŽ˜์ด์ง€์— http://java.sun.com/jsp/jstl/core" %>๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผํ•œ๋‹ค.(๋ฌผ๋ก  jstl๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋”ฐ๋กœ ๋ฐ›์•„์•ผํ•œ๋‹ค.) 02input.jsp 02if.jsp ์ˆ˜ ์šฐ ๋ฏธ ์–‘ ์šฐ ๋ฏธ ์–‘ ์—์„œ..