Banner

My Tech Blog (ํšŒ์›๊ฐ€์ž…)

โœ… session ๊ด€๋ฆฌโœ… logout.jspโœ… main.jsp ๋งŒ๋“ค๊ธฐ ์ง€๊ธˆ๊นŒ์ง€ ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ๊นŒ์ง€ ๊ตฌํ˜„ํ•ด๋ณด์•˜๋‹ค.์ด์ œ ์„ธ์…˜ ๊ด€๋ฆฌ๋ฅผ ํ•ด ๋ณด์ž. `session` ์ด๋ž€ ํ˜„์žฌ ์ ‘์†ํ•œ ํšŒ์›์—๊ฒŒ ํ• ๋‹นํ•ด์ฃผ๋Š” ๊ณ ์œ ํ•œ ์•„์ด๋””์ด๋‹ค.๋กœ๊ทธ์ธ์— ์„ฑ๊ณตํ•œ ํšŒ์›์—๊ฒŒ ๊ฐ๊ฐ `session`์„ ๋ถ€์—ฌํ•ด์ฃผ๋Š” ๊ณผ์ •์„ ๊ตฌํ˜„ํ•ด๋ณด์ž. `loginAction.jsp`์— `session`์„ ์„ค์ •ํ•ด์ฃผ๋Š” `session.setAttribute()` ์ฝ”๋“œ ํ•œ ์ค„ ํƒ€์ดํ•‘!`joinAction.jsp`์—๋„ ์ฝ”๋“œ ๋ณต๋ถ™ํ•ด์„œ ๋„ฃ์–ด ์ค€๋‹ค.๋กœ๊ทธ์ธ ์„ฑ๊ณตํ•œ ํšŒ์›์—๊ฒŒ ์„ธ์…˜ ๋ถ€์—ฌํ•˜๊ณ  ๋ฉ”์ธ ํŽ˜์ด์ง€๋กœ ๋„˜์–ด๊ฐ€๊ฒŒ๋” ํ•ด ์ค€๋‹ค. ์ด๋ ‡๊ฒŒ ์„ธ์…˜์„ ์„ค์ •ํ•ด ์ฃผ์—ˆ๋‹ค. ์„ธ์…˜์€ ํ•ด์ œ ํ•˜๊ธฐ ์ „๊นŒ์ง€๋Š” ์œ ํšจํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ• ๋‹นํ•œ ์„ธ์…˜์„ ํ•ด์ œํ•  ์ˆ˜ ์žˆ๋Š” ๋กœ๊ทธ์•„์›ƒ ํŽ˜์ด์ง€๋„ ๋งŒ๋“ค์–ด ์ฃผ์ž. `joinAc..
์ €๋ฒˆ์— ํšŒ์›๊ฐ€์ž… ์–‘์‹ `join.jsp` ๊นŒ์ง€ ๋งŒ๋“ค์—ˆ๋‹ค. ์˜ค๋Š˜์€ userDAO ํด๋ž˜์Šค์— ํšŒ์›๊ฐ€์ž…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ•ด ์ค„๊ฒƒ์ด๋‹ค.DAO ํด๋ž˜์Šค๋Š” ์‹ค์ œ๋กœ DB์— ์ ‘๊ทผํ•ด์„œ ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ๋Š” ์—ญํ• ์„ ํ•˜๋Š” ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๊ฐ์ฒด์ด๋‹ค.๊ทธ๋ฆฌ๊ณ  ์ฒ˜๋ฆฌ๋œ ๊ฒฐ๊ณผ๊ฐ’์„ ๊ฐ€์ ธ์™€์„œ View ์ฒ˜๋ฆฌํ•˜๋Š” `join Action.jsp` ๊นŒ์ง€ ๋งŒ๋“ค์–ด ๋ณผ ๊ฒƒ์ด๋‹ค.   ๋จผ์ € userDAO ํด๋ž˜์Šค๋กœ ๊ฐ„๋‹ค.login ๋ฉ”์„œ๋“œ ์•„๋ž˜์— join ๋ฉ”์„œ๋“œ๋ฅผ ๋งŒ๋“ค์–ด ์ค€๋‹ค.// ํšŒ์›๊ฐ€์ž… ์ฒ˜๋ฆฌ ๋กœ์ง public int join(User user) { String SQL = "INSERT INTO USER VALUES(?, ?, ?, ?, ?)"; try { psmt = conn.prepareStatem..
DB ์œ„์ฃผ๋กœ ํ• ๊ฑฐ๋ผ ํ™”๋ฉด์€ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์œผ๋กœ ํด๋ž˜์Šค๋งŒ ๋จน์—ฌ์„œ ๋งŒ๋“ค๊ณ  ์žˆ์–ด์š”. ๋ฐ์ดํ„ฐ ๋„˜์–ด๊ฐ€๋Š” ๊ฒƒ๋งŒ ๋ณผ ๊ฑฐ๋ผ์„œ ํ™”๋ฉด ๋””์ž์ธ์€ ์‹ ๊ฒฝ ๋ชป ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!! ์ด์˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์€ HTML/CSS ์‹ ๊ฒฝ์“ฐ๋ฉด์„œ ํ•˜์…”๋„ ์ข‹์Šต๋‹ˆ๋‹ค. ์ „ ๋ฐ”๋น ์„œ ๋””์ž์ธ์€ ๋ฒ„๋ ธ์ง€๋งŒ,  ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ์ด์˜๊ฒŒ ๋งŒ๋“œ์‹œ๋ผ๊ณ  ๊ฐ„๋‹จํ•œ ํšŒ์›๊ฐ€์ž…/๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ ์‹ค์Šตํ•ด ๋ณด์‹ค๋งŒํ•œ ๋ฌด๋ฃŒ ํ…œํ”Œ๋ฆฟ ์‚ฌ์ดํŠธ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€  ์ถ”์ฒœํ•˜๋Š” ํ…œํ”Œ๋ฆฟ์€ Forty์ž…๋‹ˆ๋‹ค. Forty์—์„œ ํšŒ์›๊ฐ€์ž…/๋กœ๊ทธ์ธ/๊ฒŒ์‹œํŒ ๋“ฑ ์‹ค์Šตํ•˜์‹œ๊ธฐ ์ข‹์•„์š”. https://html5up.net/ HTML5 UPResponsive HTML5 and CSS3 site templates designed by @ajlkn and released under the Creative Commons license.ht..
1. form ํƒœ๊ทธencrype์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์†์„ฑ๊ฐ’ "name", "method", "actioin", "encrype" ํŒŒ์ผ์ด๋‚˜ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ๊ฐ€ ์žˆ๋Š” ํผ์€ ๋ฐ˜๋“œ์‹œ enctype="multipart/from-data" ์ด ํƒ€์ž…์œผ๋กœ ์ง€์ •์„ ํ•ด์•ผ ํŒŒ์ผ ์—…๋กœ๋“œ(์ „์†ก)์ด ๋œ๋‹ค. ๊ทธ๋ž˜์•ผ ์„œ๋ฒ„์— ํŒŒ์ผ์„ ์ €์žฅํ•ด์„œ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋‹ค.    ๋ณด์•ˆ๋•Œ๋ฌธ์— ์ž๋™์™„์„ฑ์ด๋‚˜ ์ž…๋ ฅ ๊ฐ’ ์ฒดํฌ๋ฅผ ํ•˜์ง€ ์•Š๋„๋ก ํ•˜๋ ค๋ฉด qutocomoplete="off" ํผ ์†์„ฑ๊ณผ "novalidate" ์†์„ฑ ์‚ฌ์šฉ + +  2. input ํƒœ๊ทธplaceholder="ํ…์ŠคํŠธ"์ž…๋ ฅ ํ•„๋“œ์— ์˜ˆ์ƒ๋˜๋Š” ์ถ”์ฒœ ๊ฐ’์„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ•˜๋Š” ์šฉ๋„ ํƒœ๊ทธ ํฌ์ปค์Šค ๋˜๋ฉด ์‚ฌ๋ผ์ง readonly์ฝ๊ธฐ ์ „์šฉ. ์ž…๋ ฅํ•„๋“œ๊ฐ€ ์‚ฌ์šฉ์ž ์ž…๋ ฅ ๋ถˆ๊ฐ€ํ•œ ์ƒํƒœ๊ฐ€ ๋จ. ..
์—ฌ๋Ÿฌ๋ถ„๋“ค ์˜ค๋Š˜์€ ์ €๋งŒ์˜ ๊ฟ€ํŒ์„ ๊ฐ€์ง€๊ณ  ์™”์Šต๋‹ˆ๋‹ค ใ…Žใ…Žใ…Ž!์—ฌ๋Ÿฌ๋ถ„๋„ ์ €๋ž‘ ๋น„์Šทํ•œ ์ผ์„ ๊ฒช์œผ์‹  ์  ์žˆ์„ํ…๋ฐ์š” ์ œ๊ฐ€ ์˜ค๋Š˜ ์˜ค๋žœ๋งŒ์— Quora ์ ‘์†ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ์•„์ด๋””/๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ƒ๊ฐ์ด ์•ˆ๋‚˜๋Š” ๊ฑฐ์˜ˆ์š”๊ทธ๋ž˜์„œ ์ƒ๊ฐ๋‚˜๋Š” ๊ตฌ๊ธ€ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ์„ ํ–ˆ๋Š”๋ฐ ์ œ๊ฐ€ ๊ฐ€์ž…ํ–ˆ๋˜ ๊ณ„์ •์ด ์•„๋‹ˆ์—ˆ์–ด์š”.๊ทธ๋ฆฌ๊ณ  ๊ฐ•์ œ ํšŒ์›๊ฐ€์ž…์„ ๊ถŒ์œ ๋‹นํ–ˆ์Šต๋‹ˆ๋‹คใ…Žใ…Žใ…Žใ…Žใ…Ž์ง๊ด€์ ์ธ UX/UI๋ฅผ ์ค‘์‹œํ•˜๋Š” ์™ธ๊ตญ์‚ฌ์ดํŠธ์˜ ์š”์ฆ˜ ํŠธ๋ Œ๋“œ์ž…๋‹ˆ๋‹ค.๊ฐ€์ž… ์•ˆ ๋œ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ์„ ์‹œ๋„ํ•˜๋ฉด '์•„์ด๋””/๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค' ๋ผ๋Š” ์•ˆ๋‚ด๋ฌธ๊ตฌ ๋Œ€์‹ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํšŒ์›๊ฐ€์ž… ์ ˆ์ฐจ๋กœ ์—ฐ๊ฒฐํ•ด ์ฃผ๋Š” ์‚ฌ์ดํŠธ๋“ค์ด ๋งŽ์Šต๋‹ˆ๋‹ค. ใ…Žใ…Žใ…Ž์ข‹์•„ํ•˜๋Š” ๊ด€์‹ฌ์‚ฌ๋ฅผ ์„ ํƒํ•ด ๋ณด๋ผ๊ณ  ํ•˜๋ฉด์„œ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์„œ๋น„์Šค ์ด์šฉ์„ ์œ ๋„ํ•˜์ฃ .  ํšŒ์›๊ฐ€์ž… ํŒ์—…์ฐฝ์ด ๋œจ๋ฉฐ ๋กœ๊ทธ์•„์›ƒ ๋ฒ„ํŠผ์ด ๋น„ํ™œ์„ฑํ™” ๋˜๊ฑฐ๋‚˜ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•ด๋„ ํšŒ์›๊ฐ€์ž… ์ง€์˜ฅ์— ๊ฐ‡ํžˆ๋ฉด ์ •๋ง ๋ถˆํŽธํ•œ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'ํšŒ์›๊ฐ€์ž…' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ