๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[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.
Servlet Filter ์‚ฌ์šฉํ•˜๊ธฐ Servlet Filter ์‚ฌ์šฉํ•˜๊ธฐ Filter์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ํ•„ํ„ฐ๋Š” ์„œ๋ธ”๋ฆฟ ์‹คํ–‰ ์ „, ํ›„์— ์–ด๋–ค ์ž‘์—…์„ ํ•˜๊ณ ์ž ํ• ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ์˜ ์•”ํ˜ธ๋ฅผ ํ•ด์ œํ•œ๋‹ค๊ฑฐ๋‚˜, ์„œ๋ธ”๋ฆฟ์ด ์‹คํ–‰๋˜๊ธฐ ์ „์— ํ•„์š”ํ•œ ์ž์›์„ ๋ฏธ๋ฆฌ ์ค€๋น„ํ•˜๊ฑฐ๋‚˜, ์„œ๋ธ”๋ฆฟ์ด ์‹คํ–‰๋  ๋•Œ๋งˆ๋‹ค ๋กœ๊ทธ๋ฅผ ๋‚จ๊ธด๋‹ค๊ฑฐ๋‚˜ ํ•˜๋Š” ์ž‘์—…์„ ํ•„ํ„ฐ๋ฅผ ํ†ตํ•ด ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ ๊ทธ๋Ÿฐ ์ž‘์—…๋“ค์„ ์„œ๋ธ”๋ฆฟ์— ๋‹ด๋Š”๋‹ค๋ฉด ํ•„์š”ํ•œ ์„œ๋ธ”๋ฆฟ๋งˆ๋‹ค ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•ด์•ผํ•˜๊ณ  ํ•„์š”๊ฐ€ ์—†์–ด์ง€๋ฉด ๊ทธ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•œ ์„œ๋ธ”๋ฆฟ์„ ๋ชจ๋‘ ์ฐพ์•„์„œ ์‚ญ์ œํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๊ด€๋ฆฌํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ๋ฒˆ๊ฑฐ๋กœ์›Œ์ง„๋‹ค. ํ•„ํ„ฐ๋กœ POST Request Parameter ๋ฌธ์ž ์ง‘ํ•ฉ ์„ค์ •ํ•˜๊ธฐ POST ์š”์ฒญ์˜ ๊ฒฝ์šฐ ์„œ๋ฒ„๋กœ ๋ณด๋‚ด๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ message body์— ์žˆ๊ณ  ์„œ๋ธ”๋ฆฟ์—์„œ ์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊บผ๋‚ด๋ ค๋ฉด getParamet.. 2020. 2. 11.
Context Parameter(์ปจํ…์ŠคํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ ๊ด€๋ จ ๊ธ€ - Servlet Init Parameter(์„œ๋ธ”๋ฆฟ ์ดˆ๊ธฐํ™” ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ - Tomcat ์„œ๋ฒ„ DataSource ์„ค์ • ๋ฐฉ๋ฒ• (+JNDI) Context Parameter(์ปจํ…์ŠคํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ Servlet init parameter๋Š” ๊ทธ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์„ ์–ธ๋œ ์„œ๋ธ”๋ฆฟ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ  ๋‹ค๋ฅธ ์„œ๋ธ”๋ฆฟ์€ ์ฐธ์กฐํ•  ์ˆ˜ ์—†๋‹ค. ์—ฌ๋Ÿฌ ์„œ๋ธ”๋ฆฟ์ด ๊ณตํ†ต์˜ ํ™˜๊ฒฝ ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด context parameter๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค. Context parameter๋Š” ๊ฐ™์€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„œ๋ธ”๋ฆฟ๋“ค์ด ๊ฐ™์ด ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์ด๋‹ค. ๋‹ค์Œ์€ MySQL DB ์—ฐ๊ฒฐ ์ •๋ณด๋ฅผ context parameter๋กœ ์„ ์–ธํ•ด์„œ DB ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•œ ์„œ๋ธ”๋ฆฟ.. 2020. 2. 11.
Servlet Init Parameter(์„œ๋ธ”๋ฆฟ ์ดˆ๊ธฐํ™” ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ ๊ด€๋ จ ๊ธ€ - Context Parameter(์ปจํ…์ŠคํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ Servlet Init Parameter(์„œ๋ธ”๋ฆฟ ์ดˆ๊ธฐํ™” ๋งค๊ฐœ๋ณ€์ˆ˜)๋กœ web.xml์— DB ์—ฐ๊ฒฐ ์ •๋ณด ๊ด€๋ฆฌํ•˜๊ธฐ Servlet Init Parameter(์„œ๋ธ”๋ฆฟ ์ดˆ๊ธฐํ™” ๋งค๊ฐœ๋ณ€์ˆ˜) ์„œ๋ธ”๋ฆฟ์„ ์ƒ์„ฑํ•˜๊ณ  ์ดˆ๊ธฐํ™”ํ•  ๋•Œ, ์ฆ‰ init()์„ ํ˜ธ์ถœํ• ๋•Œ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์„œ๋ธ”๋ฆฟ์— ์ „๋‹ฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์ด๋‹ค. ๋ณดํ†ต DB ์—ฐ๊ฒฐ ์ •๋ณด์™€ ๊ฐ™์€ ์ •์ ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ๋‹ค์Œ์˜ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. DDํŒŒ์ผ(web.xml)์˜ ์„œ๋ธ”๋ฆฟ ๋ฐฐ์น˜ ์ •๋ณด์— ์„ค์ • ์–ด๋…ธํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•ด์„œ ์„œ๋ธ”๋ฆฟ ์†Œ์Šค ์ฝ”๋“œ์— ์„ค์ • ๊ฐ€๋Šฅํ•œ 1๋ฒˆ์˜ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ค์ •ํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค. ์†Œ์Šค ์ฝ”๋“œ์—์„œ ๋ถ„๋ฆฌํ•ด์„œ ์™ธ๋ถ€ ํŒŒ์ผ์— ๋‘๋Š”๊ฒŒ ๋” ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด.. 2020. 2. 11.
[IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • ๊ด€๋ จ ๊ธ€ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (2) ํšŒ์› ๊ฐ€์ž… - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (4) ๋ทฐ(JSP) ๋ถ„๋ฆฌํ•˜๊ธฐ [IntelliJ] JAVA ์„œ๋ธ”๋ฆฟ + MySQL ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • ํ•™์ƒ ์ƒ์„ธ ์ •๋ณด ๋งํฌ ์ถ”๊ฐ€ ํ•™์ƒ ๋ชฉ๋ก ํŽ˜์ด์ง€์— ํ•™์ƒ์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋Š” ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 out.println("ํ•™์ƒ ๋ชฉ๋ก"); out.println("์‹ ๊ทœ ํ•™์ƒ"); while (rs.next()) {.. 2020. 2. 10.
[IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ ๊ด€๋ จ ๊ธ€ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (2) ํšŒ์› ๊ฐ€์ž… - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(JAVA + MySQL) - (3) ํšŒ์› ์ •๋ณด ์ˆ˜์ • - [IntelliJ] ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ(MVC) - (4) ๋ทฐ(JSP) ๋ถ„๋ฆฌํ•˜๊ธฐ [IntelliJ] JAVA ์„œ๋ธ”๋ฆฟ + MySQL ํšŒ์›๊ฐ€์ž… ์˜ˆ์ œ - (1) ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ ํ™˜๊ฒฝ ์ •๋ณด IntelliJ IDEA 2019.3 Ultimate, Apache Tomcat 9, MySQL 8 ์œ„์™€ ๊ฐ™์€ ํ•™์ƒ ํ…Œ์ด๋ธ”์„ ์ด์šฉํ•ด ํ•™์ƒ ๋ชฉ๋ก ์ถœ๋ ฅ, ์‹ ๊ทœ ํ•™์ƒ ๋“ฑ๋ก, ๊ธฐ์กด ํ•™์ƒ ์ •๋ณด ์ˆ˜์ •์„ ํ•˜๋Š” ์„œ๋ธ”๋ฆฟ์„ ๊ตฌํ˜„ํ•œ๋‹ค. 1. ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ๋ฐ ์„ธํŒ… ์šฐ์„  ์›น ํ”„๋กœ์ .. 2020. 2. 9.
GenericServlet์„ ์ƒ์†ํ•˜๋Š” ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋ฐ ๋ฐฐ์น˜ GenericServlet์„ ์ƒ์†ํ•˜๋Š” ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋ฐ ๋ฐฐ์น˜ ์ง€๋‚œ ํฌ์ŠคํŒ…์—์„œ ์„œ๋ธ”๋ฆฟ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” Servlet ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์•˜๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” Servlet์„ ๊ตฌํ˜„ํ•˜๋Š” GenericServlet ์ถ”์ƒ ํด๋ž˜์Šค์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. ์ง€๋‚œ ํฌ์ŠคํŒ… - Servlet ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ธฐ๋ณธ ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋ฐ ๋ฐฐ์น˜ Servlet ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ด์„œ ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋ ค๋ฉด ๋‹ค์„ฏ ๊ฐœ์˜ ๋ฉ”์†Œ๋“œ์ธ init(), service(), destroy(), getServiceConfig(), getServiceInfo()๋ฅผ ๋ชจ๋‘ ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์„œ๋ธ”๋ฆฟ์„ ๊ตฌํ˜„ํ• ๋•Œ ๋ฐ˜๋“œ์‹œ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š” ๋ฉ”์†Œ๋“œ๋Š” ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค ํ˜ธ์ถœ๋˜๋Š” service() ํ•˜๋‚˜ ๋ฟ์ด๋‹ค. ๋‚˜๋จธ์ง€ ๋ฉ”์†Œ๋“œ๋“ค์€ ํ•„์ˆ˜์ .. 2020. 2. 8.
Servlet ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ธฐ๋ณธ ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋ฐ ๋ฐฐ์น˜ Servlet ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ธฐ๋ณธ ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ๋ฐ ๋ฐฐ์น˜ 1. ์„œ๋ธ”๋ฆฟ ์ž‘์„ฑ ์ž๋ฐ” ์„œ๋ธ”๋ฆฟ ํด๋ž˜์Šค๋Š” javax.servlet.Servlet ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค. Servlet์€ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์„œ๋ธ”๋ฆฟ์— ๋Œ€ํ•ด ํ˜ธ์ถœํ•˜๋Š” ๋ฉ”์†Œ๋“œ init(), service(), destroy(), getServiceConfig(), getServiceInfo()๋ฅผ ์ •์˜ํ•œ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. public class FirstServlet implements Servlet { ServletConfig config; @Override public void init(ServletConfig config) throws ServletException { System.out.println("init() called"); this... 2020. 2. 4.