๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Tomcat ์„œ๋ฒ„ DataSource ์„ค์ • ๋ฐฉ๋ฒ• (+JNDI) ํ™˜๊ฒฝ ์ •๋ณด IntelliJ IDEA 2019.3 Ultimate, Amazon Corretto 11, Tomcat 9, JDBC 4.2, ์˜์กด์„ฑ ๊ด€๋ฆฌ ํ™˜๊ฒฝ X Tomcat ์„œ๋ฒ„ DataSource ์„ค์ • ๋ฐฉ๋ฒ• (+JNDI) โ• ํฌ์ŠคํŠธ ์ƒ๋‹จ์—๋Š” DataSource, JNDI์˜ ์ด๋ก ์ ์ธ ๋‚ด์šฉ์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ฐ”๋กœ ์„ค์ •, ์ ์šฉ ๋ฐฉ๋ฒ•์„ ๋ณด๋ ค๋ฉด ์Šคํฌ๋กค์„ ๋ฐ‘์œผ๋กœ ๋‚ด๋ ค 'DataSource ์ ์šฉ'๋ถ€ํ„ฐ ๋ณด๋ฉด ๋ฉ๋‹ˆ๋‹ค. DataSource๋Š” JDK 1.4๋ถ€ํ„ฐ ํฌํ•จ๋œ javax.sql ํŒจํ‚ค์ง€์˜ API์ด๋‹ค. DataSource๋ฅผ ์ด์šฉํ•˜์—ฌ Java EE ์„œ๋ฒ„(์˜ˆ: ํ†ฐ์บฃ ์„œ๋ฒ„)์—์„œ DB ์ปค๋„ฅ์…˜ ํ’€์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. javax.sql ํŒจํ‚ค์ง€ javax.sql ํŒจํ‚ค์ง€๋Š” java.sql ํŒจํ‚ค์ง€์˜ ๊ธฐ๋Šฅ์„ ๋ณด์กฐํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ํ™•์žฅ.. 2020. 2. 17.
ServletContextListener๋กœ DB ์ปค๋„ฅ์…˜, DAO ๊ณต์œ  ๊ฐ์ฒด ๊ด€๋ฆฌํ•˜๊ธฐ ServletContextListener๋กœ DB ์ปค๋„ฅ์…˜, DAO ๊ณต์œ  ๊ฐ์ฒด ๊ด€๋ฆฌํ•˜๊ธฐ ํ•„์š”ํ• ๋•Œ๋งˆ๋‹ค ๋งค๋ฒˆ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ๋งŽ์€ garbage๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  ์‹คํ–‰ ์‹œ๊ฐ„์ด ๊ธธ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๋Ÿฌ ์„œ๋ธ”๋ฆฟ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฐ์ฒด๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘ํ•  ๋•Œ ์ค€๋น„ํ•ด๋‘ฌ์„œ ์„œ๋กœ ๊ณต์œ ํ•˜๋Š” ๊ฒƒ์ด ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋‚˜ ์‹คํ–‰ ์†๋„ ์ธก๋ฉด์—์„œ ์ข‹๋‹ค. ๐Ÿšจ ์‹ค์ œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹ฑ๊ธ€ DB ์ปค๋„ฅ์…˜์œผ๋กœ ๊ตฌํ˜„ํ•˜๋ฉด ์•ˆ๋œ๋‹ค! ๋ณธ ํฌ์ŠคํŒ…์˜ ์ค‘์‹ฌ ๋‚ด์šฉ์€ ServletContextListener ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ด์šฉํ•ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘๋  ๋•Œ ํ•„์š”ํ•œ ์ค€๋น„์ž‘์—…์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. Listener ํ†ฐ์บฃ๊ฐ™์€ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋Š” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ์ข…๋ฃŒ๊นŒ์ง€ ์ฃผ์š”ํ•œ ์ด๋ฒคํŠธ์— ๋Œ€ํ•ด ์•Œ๋ฆผ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. ์ด๋ฒคํŠธ์— ๋”ฐ๋ผ ์ •ํ•ด์ง„ List.. 2020. 2. 15.
[IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (7) DAO ๋ถ„๋ฆฌํ•˜๊ธฐ ๊ด€๋ จ ๊ธ€ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (2) ํšŒ์› ๊ฐ€์ž… - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (4) ๋ทฐ(JSP) ๋ถ„๋ฆฌํ•˜๊ธฐ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (5) ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ(HttpSession) - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (6) ํšŒ์› ์‚ญ์ œ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (7) DAO ๋ถ„๋ฆฌํ•˜๊ธฐ ์ง€๊ธˆ๊นŒ์ง€ ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ๋Š” ์„œ๋ธ”๋ฆฟ์—์„œ JSP๋กœ ํ™”๋ฉด ์ƒ์„ฑ์„ ์œ„์ž„ํ•˜์—ฌ ๋ทฐ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ ๊นŒ์ง€ ๊ตฌํ˜„๋˜์—ˆ๋‹ค. ์ด์ œ DB์™€ ์—ฐ๋™ํ•ด์„œ .. 2020. 2. 15.
[JSP] JSTL ํ™œ์šฉ ๋ฐฉ๋ฒ• - JSP์—์„œ ์ž๋ฐ” ์ฝ”๋“œ ์ œ๊ฑฐ ๊ด€๋ จ ๊ธ€ - [JSP] JSTL ์‚ฌ์šฉ ๋ฐฉ๋ฒ• - ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‹ค์šด๋กœ๋“œ ๋ฐ ์„ธํŒ… - [JSP] JSTL ์‚ฌ์šฉ ๋ฐฉ๋ฒ• - ์ฃผ์š” ํƒœ๊ทธ ๋ฌธ๋ฒ• ์ •๋ฆฌ [JSP] JSTL ํ™œ์šฉ ๋ฐฉ๋ฒ• - JSP์—์„œ ์ž๋ฐ” ์ฝ”๋“œ ์ œ๊ฑฐ ๋‹ค์Œ์€ ํšŒ์› ๋ชฉ๋ก์„ ์ถœ๋ ฅํ•˜๋Š” JSP์ด๋‹ค. JSTL, EL์„ ์‚ฌ์šฉํ•ด์„œ ์ด JSP์—์„œ ์‚ฌ์šฉ๋œ ๋ชจ๋“  ์ž๋ฐ”์ฝ”๋“œ์™€ ํ‘œํ˜„์‹ ์„ ์—†์•จ ๊ฒƒ์ด๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ํ•™์ƒ ๋ชฉ๋ก ํ•™์ƒ ๋ชฉ๋ก ์‹ ๊ทœ ํ•™์ƒ , , , , , , , Colored by Color Scripter cs ์šฐ์„  import ์ง€์‹œ์ž์™€ loginMember, students๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์ฝ”๋“œ, .. 2020. 2. 15.
[JSP] JSTL ์‚ฌ์šฉ ๋ฐฉ๋ฒ• - ์ฃผ์š” ํƒœ๊ทธ ๋ฌธ๋ฒ• ์ •๋ฆฌ JSTL์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‹ค์šด๋กœ๋“œ ๋ฐ ํ”„๋กœ์ ํŠธ ์„ธํŒ…์€ ์ด ํฌ์ŠคํŠธ๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค. ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ ์–ธ ์ž๋ฐ”์—์„œ import๋ฌธ์„ ์„ ์–ธํ•˜๋“ฏ JSP์—์„œ๋„ JSTL ํ™•์žฅ ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด taglib ์ง€์‹œ์ž๋กœ ๋ผ์ด๋ฒ„๋ฆฌ๋ฅผ ์„ ์–ธํ•ด์•ผ ํ•œ๋‹ค. JSP ์ง€์‹œ์ž ํƒœ๊ทธ ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ ์–ธํ•œ๋‹ค. uri : ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค URI ์‹๋ณ„์ž prefix : JSTL ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ• ๋•Œ ํƒœ๊ทธ ์ด๋ฆ„ ์•ž์— ๋ถ™์ผ ์ ‘๋‘์‚ฌ ๋‹ค์Œ์€ ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ณ„ ํ‘œ์ค€ ์„ ์–ธ๋ฌธ์ด๋‹ค. ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ ์–ธ๋ฌธ Core XML I18N Database Functions prefix๋ฅผ ๊ผญ ์ €๋ ‡๊ฒŒ ์ง€์ •ํ•ด์•ผํ•˜๋Š”๊ฑด ์•„๋‹ˆ์ง€๋งŒ JSTL์—์„œ ์ œ์•ˆํ•˜๋Š” ํ‘œ์ค€ ์ ‘๋‘์‚ฌ์ด๋ฏ€๋กœ ๋˜‘๊ฐ™์ด ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค. ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ณ„ ํƒœ๊ทธ ์ •๋ฆฌ ํƒœ๊ทธ.. 2020. 2. 15.
[JSP] JSTL ์‚ฌ์šฉ ๋ฐฉ๋ฒ• - ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‹ค์šด๋กœ๋“œ ๋ฐ ์„ธํŒ… ํ™˜๊ฒฝ ์ •๋ณด IntelliJ 2019.3 Ultimate, Tomcat 9, JSTL 1.2, ์˜์กด์„ฑ ๊ด€๋ฆฌ ํ™˜๊ฒฝ X ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ์˜์กด์„ฑ ๊ด€๋ฆฌ ํ™˜๊ฒฝ ์—†์ด JSTL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ธํŒ…ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹ค๋ฃฌ๋‹ค. IDE๋Š” IntelliJ 2019.3 Ultimate์„ ์‚ฌ์šฉํ•œ๋‹ค. JSTL(JSP Standard Tag Library) JSTL์€ JSP์˜ ๊ธฐ๋ณธ ํƒœ๊ทธ๊ฐ€ ์•„๋‹Œ JSP ํ™•์žฅ ํƒœ๊ทธ์ด๋‹ค. ์‚ฌ์šฉํ•˜๋ ค๋ฉด JSTL API ๋ฐ ์ž๋ฐ” ๊ตฌํ˜„์ฒด์˜ 2๊ฐœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ˜น์€ API์™€ ๊ตฌํ˜„์ฒด๊ฐ€ ํ•จ๊ป˜ ๋ฒˆ๋“ค ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. JSTL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‹ค์šด๋กœ๋“œ 1. JSTL API + ๊ตฌํ˜„์ฒด ๋ฒˆ๋“ค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ https://mvnrepository.com/artifact/javax.servlet/jstl/1.2 ์œ„ ๋งํฌ์—์„œ.. 2020. 2. 14.
JSP - EL ํ‘œํ˜„์‹ ๋ฌธ๋ฒ•๊ณผ ์‚ฌ์šฉ ๋ฐฉ๋ฒ• JSP - EL ํ‘œํ˜„์‹ ๋ฌธ๋ฒ•๊ณผ ์‚ฌ์šฉ ๋ฐฉ๋ฒ• EL(Expression Language)์€ ์ž๋ฐ” ๋นˆ์˜ ํ”„๋กœํผํ‹ฐ, ๊ฐ’์„ JSP์˜ ํ‘œํ˜„์‹ ์ด๋‚˜ ์•ก์…˜ ํƒœ๊ทธ ๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ ๋ณด๋‹ค ์‰ฝ๊ณ  ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๊บผ๋‚ผ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ๋˜ํ•œ static ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜๋„ ์žˆ๋Š”๋ฐ JSP์—์„œ๋Š” ์ฃผ๋กœ ์„œ๋ธ”๋ฆฟ ๋ณด๊ด€์†Œ(JspContext, ServletRequest, HttpSession, ServletContext)์—์„œ ๊ฐ’์„ ๊บผ๋‚ผ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. EL ํ‘œ๊ธฐ๋ฒ• ${ } - JSP๊ฐ€ ์‹คํ–‰๋  ๋•Œ ์ฆ‰์‹œ ๋ฐ˜์˜๋œ๋‹ค. (Immediate evaluation) - ๊ฐ์ฒด ํ”„๋กœํผํ‹ฐ ๊ฐ’์„ ๊บผ๋‚ผ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ #{ } - ์‹œ์Šคํ…œ์—์„œ ํ•„์š”ํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋  ๋•Œ ๊ทธ ๊ฐ’์„ ์‚ฌ์šฉํ•œ๋‹ค. (Deferred evaluation) - ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’์„ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ์— ๋‹ด๋Š” ์šฉ๋„๋กœ.. 2020. 2. 13.
์„œ๋ธ”๋ฆฟ ๋ฐ์ดํ„ฐ ๋ณด๊ด€์†Œ - ServletContext, HttpSession, ServletRequest, JspContext ์„œ๋ธ”๋ฆฟ ๊ธฐ์ˆ ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” 4๊ฐ€์ง€ ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ ๋ณด๊ด€์†Œ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ๊ฐ ๋ณด๊ด€์†Œ๋Š” ๊ณต์œ  ๋ฒ”์œ„๊ฐ€ ๋‹ค๋ฅด๋‹ค. ์„œ๋ธ”๋ฆฟ ๋ฐ์ดํ„ฐ ๋ณด๊ด€์†Œ ์ข…๋ฅ˜ โ‘  ServletContext, โ‘ก HttpSession, โ‘ข ServletRequest, โ‘ฃ JspContext ๋ฐ์ดํ„ฐ ์ ‘๊ทผํ•˜๊ธฐ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ชจ๋“  ๋ณด๊ด€์†Œ๊ฐ€ ๋™์ผํ•˜๋‹ค. ๋ณด๊ด€์†Œ ๊ฐ์ฒด.setAttribute(ํ‚ค, ๊ฐ’); // ์ €์žฅ ๋ณด๊ด€์†Œ ๊ฐ์ฒด.getAttribute(ํ‚ค); // ์กฐํšŒ ๋ฐ์ดํ„ฐ ๋ณด๊ด€์†Œ ๋ณ„ ํŠน์ง•๊ณผ ํ™œ์šฉ ์˜ˆ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ServletContext ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘๋ ๋•Œ ์ƒ์„ฑ๋ผ์„œ ์ข…๋ฃŒ๋ ๋•Œ๊นŒ์ง€ ์œ ์ง€๋œ๋‹ค. ServletContext์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋Š” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ๋ชจ๋“  ์„œ๋ธ”๋ฆฟ์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. JSP์—์„œ application .. 2020. 2. 13.
[IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (6) ํšŒ์› ์‚ญ์ œ ๊ด€๋ จ ๊ธ€ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (2) ํšŒ์› ๊ฐ€์ž… - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (4) ๋ทฐ(JSP) ๋ถ„๋ฆฌํ•˜๊ธฐ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (5) ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ(HttpSession) - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (6) ํšŒ์› ์‚ญ์ œ [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (6) ํšŒ์› ์‚ญ์ œ ๋“ฑ๋ก๋œ ํ•™์ƒ ์ค‘ ์„ ํƒํ•œ ํ•™์ƒ์„ ์‚ญ์ œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. ๊ด€๋ฆฌ์ž๋งŒ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋„๋ก ํ• ๊ฒƒ์ด๋‹ค. 1. ํ•™์ƒ ๋ชฉ๋ก JSP ๋ณ€๊ฒฝ ํ•™์ƒ ์ •๋ณด.. 2020. 2. 13.
[IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (5) ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ(HttpSession) ๊ด€๋ จ ๊ธ€ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (2) ํšŒ์› ๊ฐ€์ž… - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (4) ๋ทฐ(JSP) ๋ถ„๋ฆฌํ•˜๊ธฐ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (5) ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ(HttpSession) [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (5) ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ(HttpSession) ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” HttpSession์„ ํ™œ์šฉํ•ด์„œ ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ์— ๋กœ๊ทธ์ธ/๋กœ๊ทธ์•„์›ƒ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ คํ•œ๋‹ค. 1. ๋กœ๊ทธ์ธ ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ LogInServlet.java 1 2 3 4.. 2020. 2. 13.
JSP ์•ก์…˜ ํƒœ๊ทธ์™€ jsp:useBean ์‚ฌ์šฉ ์˜ˆ์ œ JSP Action์ด๋ž€? JSP์—์„œ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ํƒœ๊ทธ๋“ค์˜ ์ง‘ํ•ฉ์„ 'JSP Action'์ด๋ผ ํ•œ๋‹ค. JSP Action์€ ๊ฐ ํƒœ๊ทธ์— ๋งž๋Š” ์ž๋ฐ” ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜๋œ๋‹ค. ์ฆ‰ JSP Action ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋”๋ผ๋„ ์Šคํฌ๋ฆฝํŠธ๋ฆฟ ์— ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ๋  ์ผ์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด JSP Action์€ ์™œ ์กด์žฌํ•˜๋Š” ๊ฒƒ์ผ๊นŒ? JSP Action ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•  ์ค„ ์•ˆ๋‹ค๋ฉด ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ JSP๋กœ ์›น ํŽ˜์ด์ง€๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋‹ค. ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ถ€๋ถ„๊ณผ ํ™”๋ฉด์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ถ€๋ถ„์„ ๋‚˜๋ˆ ์„œ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ๊ธฐ์ˆ ์ด๋‹ค. ๋‹ค์Œ์€ JSP 2.2์—์„œ ์ œ๊ณตํ•˜๋Š” Standard Action์ด๋‹ค. ์•ก์…˜ ์„ค๋ช… ์ž๋ฐ” ์ธ์Šคํ„ด์Šค๋ฅผ ์ค€๋น„ํ•œ๋‹ค. ๋ณด๊ด€์†Œ์—์„œ ์ž๋ฐ” ์ธ์Šคํ„ด์Šค๋ฅผ ๊บผ๋‚ด๊ฑฐ๋‚˜ ์ž๋ฐ” ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“ค์–ด ๋ณด๊ด€์†Œ.. 2020. 2. 13.
ServletContext๋กœ DB ์ปค๋„ฅ์…˜ ๊ฐ์ฒด ๊ด€๋ฆฌํ•˜๊ธฐ ServletContext๋กœ DB ์ปค๋„ฅ์…˜ ๊ฐ์ฒด ๊ด€๋ฆฌํ•˜๊ธฐ DB๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ธ”๋ฆฟ๋“ค์ด ํ˜ธ์ถœ๋ ๋•Œ๋งˆ๋‹ค DB ์ปค๋„ฅ์…˜์„ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ , ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘๋  ๋•Œ ์ƒ์„ฑํ•ด์„œ ServletContext์— ์ €์žฅํ•˜๋ฉด ํ•„์š”ํ•œ ์„œ๋ธ”๋ฆฟ์—์„œ ์ปค๋„ฅ์…˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๊บผ๋‚ด ์“ธ ์ˆ˜ ์žˆ๋‹ค. 1. ๊ณต์œ  ์ž์›์„ ์ค€๋น„ํ•˜๋Š” ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋จผ์ € ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘๋  ๋•Œ DB ์ปค๋„ฅ์…˜ ๊ฐ์ฒด๋ฅผ ์ค€๋น„ํ•˜๋Š” ์„œ๋ธ”๋ฆฟ์„ ์ž‘์„ฑํ•œ๋‹ค. AppInitServlet.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 public class AppInitServlet extends HttpServlet { // init().. 2020. 2. 12.