๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

FOR SW ENGINEER๐Ÿ‘ฉ‍๐Ÿ’ป/JSP24

JSP - ์ปค์Šคํ…€ ํƒœ๊ทธ(Custom Tag) ์ปค์Šคํ…€ ํƒœ๊ทธ - ์Šคํฌ๋ฆฝํŠธ ์š”์†Œ๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋งŽ์•„์งˆ์ˆ˜๋ก JSP์ฝ”๋“œ๋Š” ๋ณต์žกํ•ด์ง„๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ์  ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ JSP๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ์•ก์…˜ํƒœ๊ทธ, JSTL์ด ์ œ๊ณตํ•˜๋Š” ํƒœ๊ทธ, ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ ๊ทธ๋ฆฌ๊ณ  EL์„ ํ†ตํ•ด ์›ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ์ฝ”๋“œ๋“ค๋กœ๋„ ์•„์‰ฌ์šธ๋•Œ๊ฐ€ ์žˆ์–ด, ๊ทธ๋Ÿด ๋•Œ ์‚ฌ์šฉ์ž ์ง€์ •ํƒœ๊ทธ๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•œ๋‹ค. - ์›ํ•˜๋Š” ๋ชฉ์ ์— ๋งž๊ฒŒ ์ž‘์„ฑํ•œ ํƒœ๊ทธ๋ฅผ '์ปค์Šคํ…€ ํƒœ๊ทธ/์‚ฌ์šฉ์ž ์ง€์ • ํƒœ๊ทธ'๋ผ๊ณ ๋„ ๋ถ€๋ฆ„. - JSTL ๋˜ํ•œ ์ปค์Šคํ…€ ํƒœ๊ทธ์˜ ์ผ์ข…์œผ๋กœ, JSTL์€ ๋‹ค์ˆ˜์˜ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ•„์š”๋กœ ํ•˜๋Š” ์ปค์Šคํ…€ ํƒœ๊ทธ๋ฅผ ๋ชจ์•„๋†“์€ ์ปค์Šคํ…€ ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค โ–ถ ์ปค์Šคํ…€ ํƒœ๊ทธ ์žฅ์  - ์žฌ์‚ฌ์šฉ : ํ•œ๋ฒˆ ์ž‘์„ฑํ•œ ์ปค์Šคํ…€ ํƒœ๊ทธ๋Š” ์–ด๋–ค JSP์ปจํ…Œ์ด๋„ˆ์—์„œ๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ - ์‰ฝ๊ณ  ๋‹จ์ˆœํ•œ JSP์ฝ”๋“œ ์ž‘์„ฑ : ์ž๋ฐ”์ฝ”๋“œ์— ์ต์ˆ™ํ•˜์ง€ ์•Š์€ ๊ฐœ๋ฐœ์ž๋“ค๋„.. 2021. 12. 1.
JSP - JSTL (ํ‘œ์ค€ ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) JSTL(ํ‘œ์ค€ ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) JSP๋Š” ์™€ ๊ฐ™์€ ํƒœ๊ทธ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ถ”๊ฐ€ํ• ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š”๋ฐ ์ด๋ฅผ ์ปค์Šคํ…€ ํƒœ๊ทธ๋ผ๊ณ  ํ•œ๋‹ค. ์ปค์Šคํ…€ ํƒœ๊ทธ ์ค‘ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ๋“ค์„๋ชจ์•„ JSTL(JSP Standard Teg Library)๋ผ๋Š” ํ‘œ์ค€์„ ๋งŒ๋“ค์—ˆ๋‹ค. JSTL์„ ์‚ฌ์šฉํ•˜๋ฉด ์Šคํฌ๋ฆฝํŠธ๋ฆฟ ์ฝ”๋“œ์˜ ์‚ฌ์šฉ์„ ์ค„์ด๋ฉด์„œ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šดJSP ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ธฐ์กด์˜ JSP์ฝ”๋“œ๋Š” ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ์™€ HTML์ฝ”๋“œ๊ฐ€ ๋’ค์„ž์—ฌ ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€๊ฑฐ๋‚˜, ์ฝ”๋“œ๊ฐ€ ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง€๊ณ , ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ• ๋•Œ ๋” ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์—ฌ์•ผ ํ•œ๋‹ค. JSP๋Š” ์‹คํ–‰์ฝ”๋“œ์™€ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•˜๋Š” HTML์ฝ”๋“œ๋ฅผ ์‰ฝ๊ฒŒ ์„ž์„ ์ˆ˜ ์žˆ์–ด์„œ ๊ฐœ๋ฐœ์ด ํŽธ๋ฆฌํ•˜์ง€๋งŒ ๋ฐ˜๋Œ€๋กœ ์„ž์ด๋ฉด์„œ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์€ ๋‚˜๋น ์ง„๋‹ค. ๋ฐ˜๋ณต๋ฌธ์ด๋‚˜ ์กฐ๊ฑด๋ฌธ์„ JSTL์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌํ•œ๋‹ค๋ฉด ๋ณด๊ธฐ ์ข‹๊ณ  ์ดํ•ดํ•˜๊ธฐ.. 2021. 11. 29.
JSP - ํ‘œํ˜„์–ธ์–ด(EL, Expression Language) ํ‘œํ˜„์–ธ์–ด(EL, Expression Language) - ๊ฐ’์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋กœ์„œ, ์Šคํฌ๋ฆฝํŠธ ์š”์†Œ์ค‘ ํ•˜๋‚˜. - ํ‘œํ˜„์–ธ์–ด๋Š” ํ‘œํ˜„์‹๋ณด๋‹ค ๊ฐ„๊ฒฐํ•˜๊ณ  ํŽธ๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์ด ์‚ฌ์šฉ๋จ. - ํ‘œํ˜„์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, JSPํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ์ถœ๋ ฅํ• ์ˆ˜ ์žˆ์Œ. - JSP์˜ ๋„ค๊ฐ€์ง€ ๊ธฐ๋ณธ๊ฐ์ฒด(Page, Request, Session, Application)๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์˜์—ญ์˜ ์†์„ฑ ์‚ฌ์šฉ - ์ˆ˜์น˜ ์—ฐ์‚ฐ, ๊ด€๊ณ„์—ฐ์‚ฐ, ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž ์ œ๊ณต - ์ž๋ฐ” ํด๋ž˜์Šค ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ ๊ธฐ๋Šฅ ์ œ๊ณต - ์ฟ ํ‚ค, ๊ธฐ๋ณธ ๊ฐ์ฒด์˜ ์†์„ฑ ๋“ฑ JSP๋ฅผ ์œ„ํ•œ ํ‘œํ˜„ ์–ธ์–ด์˜ ๊ธฐ๋ณธ ๊ฐ์ฒด ์ œ๊ณต - ๋žŒ๋‹ค์‹์„ ์ด์šฉํ•œ ํ•จ์ˆ˜ ์ •์˜์™€ ์‹คํ–‰ - ์ŠคํŠธ๋ฆผ API๋ฅผ ํ†ตํ•œ ์ปฌ๋ ‰์…˜ ์ฒ˜๋ฆฌ - ์ •์  ๋ฉ”์„œ๋“œ ์‹คํ–‰ ${attribute } -> attribu.. 2021. 11. 23.
JSP - ์ž๋ฐ”๋นˆ(JavaBeans) ์ž๋ฐ”๋นˆ(JavaBeans) - JSP ๊ธฐ๋ฐ˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ •๋ณด๋ฅผ ํ‘œํ˜„ํ•  ๋–„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ ์ค‘ ํ•˜๋‚˜. - ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ• ๋•Œ, ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” ๊ฐ์ฒด(์ €์žฅ์†Œ) - ์ž๋ฐ”๋นˆ์€ ์†์„ฑ(๋ฐ์ดํ„ฐ), ๋ณ€๊ฒฝ ์ด๋ฒคํŠธ, ๊ฐ์ฒด ์ง๋ ฌํ™”๋ฅผ ์œ„ํ•œ ํ‘œ์ค€์ด๋‹ค. ์ด ์ค‘์—์„œ JSP์—์„œ๋Š” ์†์„ฑ์„ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋จ. - ์ž๋ฐ”๋นˆ์€ ๋ณดํ†ต ์ž๋ฐ” class๋กœ ์ž‘์„ฑ, ์ž๋ฐ” ๊ทธ ์ž์ฒด๋ผ๊ณ  ๋ด๋„ ๋ฌด๋ฐฉ. - java๋ฉ”์„œ๋“œ๋ฅผ ์„ ์–ธํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์ž‘์„ฑ(ํ•„๋“œ, ์ƒ์„ฑ์ž, getset๋ฉ”์„œ๋“œ๋กœ ์ด๋ฃจ์–ด์ง) package javabean; public class Bean{ //๊ฐ’์„ ์ €์žฅํ•˜๋Š” ํ•„๋“œ private String val1; private int val2; //Bean์˜ ๊ธฐ๋ณธ ์ƒ์„ฑ์ž public Bean(String val1, int val2){ sup.. 2021. 11. 23.