Banner

My Tech Blog (ํŽ˜์ด์ง€)

์˜ค๋Š˜ ์ผํ•˜๋‹ค๊ฐ€ ํ•œ๊ธ€ํŒŒ์ผ์— `ํ‘œ ์ค„๋†’์ด ์กฐ์ •`์ด ๊ฑธ๋ ค ์žˆ๋Š” ํŽ˜์ด์ง€ ๋•Œ๋ฌธ์— ํŽธ์ง‘์ด ํž˜๋“ค์–ด์„œ ํ†ต์งธ๋กœ ํŽ˜์ด์ง€๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๋ฒ•์„ ์ฐพ์•„๋ดค์Šต๋‹ˆ๋‹ค^_^ ํ•œ๊ธ€ ๋ฌธ์„œ ์ž‘์—…์„ ํ•˜๋‹ค ๋ณด๋ฉด ํ†ต์งธ๋กœ ํŽ˜์ด์ง€๋ฅผ ๋ณต์‚ฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.์ œ๊ฐ€ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”์ง€ ์•Œ๋ ค๋“œ๋ฆด๊ฒŒ์š” ์›ํ•˜๋Š” ํŽ˜์ด์ง€ ํ†ต์งธ๋กœ ๋ณต์‚ฌ ๋ฐ ๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•˜๋Š” ๋ฒ•[๋ณด๊ธฐ] - [์ž‘์—…์ฐฝ] - [์ชฝ ๋ชจ์–‘๋ณด๊ธฐ] ์ชฝ ๋ชจ์–‘ ๋ณด๊ธฐ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ์šฐ์ธก์— ์‚ฌ์ด๋“œ ์˜์—ญ์ด ์ƒ๊ธฐ๊ณ  ํŽ˜์ด์ง€ ์ถ•์†ŒํŒ์ด ๋ณด์ž…๋‹ˆ๋‹ค. [์ชฝ ๋ณต์‚ฌํ•˜๊ธฐ] - [์ชฝ ๋ถ™์—ฌ๋„ฃ๊ธฐ]์ฃผ์˜์‚ฌํ•ญ์ชฝ ๋ถ™์ด๊ธฐ๋ฅผ ํ•  ๋•Œ ์„ ํƒํ•œ ํŽ˜์ด์ง€์˜ ๋‹ค์Œ ํŽ˜์ด์ง€๋กœ ๋ณต์‚ฌํ•œ ํŽ˜์ด์ง€๊ฐ€ ์ถ”๊ฐ€๋œ๋‹ค.
์ถœ๋ ฅํ•  ๋•Œ ์ œ๋ชฉ์„ ์œ„์— ๊ณ ์ •ํ•ด์„œ ๋งค ํŽ˜์ด์ง€๋งˆ๋‹ค ๋ฐ˜๋ณต ์ถœ๋ ฅ๋˜๊ฒŒ ํ•˜๋Š” ๋ฒ•์ƒ๋‹จ ๋ฆฌ๋ณธ๋ฉ”๋‰ดํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ํƒญํŽ˜์ด์ง€ ์„ค์ • ๊ทธ๋ฃน์—์„œ ์ธ์‡„ ์ œ๋ชฉ ๋ฒ„ํŠผ ํด๋ฆญ๋‚˜ํƒ€๋‚˜๋Š” ์ฐฝ์—์„œ ์‹œํŠธ ํƒญ ์„ ํƒ๋ฐ˜๋ณตํ•  ํ–‰์—์„œ ๊ณ ์ •ํ•˜๊ณ  ์‹ถ์€ ํ–‰์„ ์„ ํƒ์˜ˆ: $1:$1 → ์ฒซ ๋ฒˆ์งธ ํ–‰์„ ๋ฐ˜๋ณต์˜ˆ: $2:$3 → ๋‘ ๋ฒˆ์งธ์™€ ์„ธ ๋ฒˆ์งธ ํ–‰์„ ๋ฐ˜๋ณตํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์—์„œ "๋ฐ˜๋ณตํ•  ํ–‰"์„ ์ง€์ •ํ•  ๋•Œ๋Š” ์ ˆ๋Œ€์ฐธ์กฐ($) ํ˜•์‹์„ ์‚ฌ์šฉํ•ด์•ผ ํ•จ.์ ˆ๋Œ€์ฐธ์กฐ ์—†์ด 1:1์ฒ˜๋Ÿผ ์ž…๋ ฅํ•˜๋ฉด, ์—‘์…€์ด ์ด๋ฅผ ์ œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•˜์ง€ ๋ชปํ•˜๋ฏ€๋กœ ๊ผญ $๋ฅผ ๋ถ™์—ฌ ์‚ฌ์šฉํ•˜๊ธฐ๐Ÿ˜Š  ์ฐธ๊ณ ๋กœ ์—ด์ด ์•ˆ ๋งž์„ ๋•Œ๋Š” [์ธ์‡„] > [์„ค์ •] > [ํ•œ ํŽ˜์ด์ง€์— ๋ชจ๋“  ์—ด ๋งž์ถ”๊ธฐ] ์„ ํƒํ•˜์ž  ๊ทธ๋Ÿผ ์ถœ๋ ฅํ• ๋•Œ ํŽ˜์ด์ง€๋งˆ๋‹ค ์ œ๋ชฉ์ด ๋ถ™์–ด์„œ ๋‚˜์˜จ๋‹ค
1. BbsDAO ํด๋ž˜์Šค์— getBbs() ๋ฉ”์„œ๋“œ ๋งŒ๋“ค๊ธฐ `getBbs(int bbsID)` ๋ฉ”์„œ๋“œ๋Š” ํŠน์ • bbsID๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฒŒ์‹œ๊ธ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์กฐํšŒํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค.์ฆ‰ ํ•˜๋‚˜์˜ ๊ธ€ ๋‚ด์šฉ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฉ”์„œ๋“œ์ด๋‹ค. ์ฒ˜์Œ์— ์ ์€ ์ฝ”๋“œ(ํ‹€๋ฆผ) public Bbs getBbs(int bbsID) { String SQL = "SELECT * FROM BBS WHERE bbsID = ?"; try (PreparedStatement psmt = conn.prepareStatement(SQL); ResultSet rs = psmt.executeQuery()) { psmt.setInt(1, bbsID); if (rs.next()) { ..
๊ธ€๋ชฉ๋ก๊ณผ ํŽ˜์ด์ง€๋„ค์ด์…˜(Pagination)๊ฒŒ์‹œ๋ฌผ์„ DB์—์„œ ๋ถˆ๋Ÿฌ์™€ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๋ ค๋ฉด ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…๊ณผ ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ ๋‘ ๊ฐ€์ง€๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•œ๋‹ค. ๊ฒŒ์‹œ๊ธ€ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ์œ„ํ•ด ArrayList๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ DB์—์„œ ์ž‘์„ฑ์ž, ์ œ๋ชฉ ๋“ฑ ๊ฒŒ์‹œ๊ธ€์˜ ์ฃผ์š” ์ •๋ณด๋ฅผ ํฌํ•จํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค. ์ด ๋•Œ ์ค‘์š”ํ•œ ์ ์€ ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ์ด๋‹ค. ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ๋Š” ํ•œ ํŽ˜์ด์ง€์— ๋ช‡ ๊ฐœ์˜ ๊ฒŒ์‹œ๊ธ€์„ ๋ณด์—ฌ์ค„์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๊ณผ์ •์ด๋ฉฐ, ์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ํŽ˜์ด์ง€์— ์ด 10๊ฐœ์˜ ๊ฒŒ์‹œ๊ธ€์„ ๊ฐ€์ ธ์˜ค๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์˜ค๋Š˜์€ `BbsDAO`์— ํŠน์ • ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ(pageNumber)์— ํ•ด๋‹นํ•˜๋Š” ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ โšก `getList(int pageNumber)`๋ฅผ ๋งŒ๋“ค์–ด ๋ณผ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํŽ˜์ด์ง• ์ฒ˜๋ฆฌ์—์„œ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ๋ฅผ ๊ธฐ์ค€์œผ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'ํŽ˜์ด์ง€' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ