Web programming

(22.12.07)Web ํ”„๋กœ๊ทธ๋ž˜๋ฐ: MVC๋ฐฉ์‹์œผ๋กœ ๋™์˜์ƒ ํ•™์Šต ์‚ฌ์ดํŠธ -1๋‹จ๊ณ„ ์›นํŽ˜์ด์ง€ ์„ค๊ณ„ ๋ฐ VOํด๋ž˜์Šค ๋งŒ๋“ค๊ธฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ ์˜ค์›” 2022. 12. 7.

๋™์˜์ƒ ํ•™์Šต ์‚ฌ์ดํŠธ

- ๊ฐ์ž์˜ ๋™์˜์ƒ์€ Youtube์˜ ๊ฐœ์ธ ๊ณ„์ •์— ์˜ฌ๋ฆฐ๋‹ค

- ๋กœ๊ทธ์ธํ•œ ์ด์šฉ์ž์—๊ฒŒ๋งŒ ๋™์˜์ƒ์„ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค

- ํ•œ๊ฐœ์˜ ๋™์˜์ƒ์„ ํ•™์Šตํ•˜๊ณ  ๋ฐ˜๋“œ์‹œ ์‹ค์Šต๊ณผ์ œ๋ฅผ ์ œ์‹œํ•œ๋‹ค

- ์‹ค์Šต๊ณผ์ œ์— ๋Œ€ํ•œ ํ†ต๊ณผ ์—ฌ๋ถ€๋Š” ๊ด€๋ฆฌ์ž๋งŒ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค

- ์‹ค์Šต๊ณผ์ œ๋ฅผ ํ†ต๊ณผํ•œ ํ•™์Šต์ž๋งŒ ๋‹ค์Œ ๋™์˜์ƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค

- 3๊ฐœ์˜ ๋™์˜์ƒ(1๊ณผ๋ชฉ)์„ ํ†ต๊ณผํ•˜๋ฉด 1๊ณผ๋ชฉ ํ†ต๊ณผ์ž๊ฐ€ ๋œ๋‹ค.

- 1๊ณผ๋ชฉ ํ†ต๊ณผ์ž๋Š” 2๊ณผ๋ชฉ ํ•™์Šต์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค

 

 

<์‹œ๋‚˜๋ฆฌ์˜ค>

VIEW ๊ตฌ์„ฑ
Back-end logic (JAVA & DB)
ํ•™์Šต์ž๊ฐ€ ์‚ฌ์ดํŠธ์— ์ ‘์†ํ•œ๋‹ค
-> main ํŽ˜์ด์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
[๋กœ๊ทธ์ธ] ๋งํฌ๋ฅผ ๋ˆ„๋ฅธ๋‹ค
-> ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
ID, ์•”ํ˜ธ ์ž…๋ ฅ ํ›„ [๋กœ๊ทธ์ธ] ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ๋‹ค
-> ๋กœ๊ทธ์ธ ์„ฑ๊ณต/์‹คํŒจ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
โ€‹
์„ฑ๊ณต์ด๋ฉด ํ˜„์žฌ ํŽ˜์ด์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ฃผ๊ณ ,
์‹คํŒจ์ด๋ฉด ๋‹ค์‹œ ๋กœ๊ทธ์ธ ํผ์„ ๋ณด์—ฌ์ค€๋‹ค
[ํ•™์Šต์‹œ์ž‘] ์„ ๋ˆ„๋ฅธ๋‹ค
-> ํ•™์Šต์ž์˜ ํ•™์Šต๋‹จ๊ณ„์— ๋”ฐ๋ฅธ ๋™์˜์ƒ์„ ๋ณด์—ฌ์ค€๋‹ค
๋™์˜์ƒ์„ ๋๊นŒ์ง€ ํ•™์Šตํ•œ๋‹ค
-> [์‹ค์Šต๊ณผ์ œ] ๋ฒ„ํŠผ์„ ๋ณด์—ฌ์ค€๋‹ค
์‹ค์Šต๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  [์ €์žฅ]์„ ๋ˆ„๋ฅธ๋‹ค
-> ํผ ๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜๊ณ  ์‹ค์Šต๊ณผ์ œ๋ฅผ ์ €์žฅํ•œ๋‹ค
   
๊ด€๋ฆฌ์ž๊ฐ€ ํŠน์ • URL์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์ดํŠธ์— ์ ‘์†ํ•œ๋‹ค
-> ๊ด€๋ฆฌ์ž ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
ID, ์•”ํ˜ธ๋ฅผ ์ž…๋ ฅ ํ›„ [๋กœ๊ทธ์ธ] ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ๋‹ค
-> ๋กœ๊ทธ์ธ ์„ฑ๊ณต/์‹คํŒจ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
์„ฑ๊ณต์ด๋ฉด ์ €์žฅ๋œ ์‹ค์Šต๊ณผ์ œ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค€๋‹ค
๊ณผ์ œ๋ชฉ๋ก์—์„œ ํ•œ๊ฐœ์˜ ์•„์ดํ…œ์„ ํด๋ฆญํ•œ๋‹ค
-> ํด๋ฆญ๋œ ๊ณผ์ œ์˜ ๋ฌธ์ œ์™€ ์ด์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๋‚ด์šฉ์ด ํ‘œ์‹œ๋œ๋‹ค
์‹ค์Šต๊ณผ์ œ๋ฅผ ๊ฒ€์‚ฌํ•˜์—ฌ [ํ†ต๊ณผ] ํ˜น์€ [์ง€๋„๋‚ด์šฉ] ์ž…๋ ฅ ํ›„ [์ €์žฅ] ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ๋‹ค
-> ๊ฒ€์‚ฌ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ €์žฅ ์„ฑ๊ณต์—ฌ๋ถ€๋ฅผ ๋ณด์—ฌ์ค€๋‹ค
   
ํ•œ๊ฐœ์˜ ๋™์˜์ƒ๊ณผ ์‹ค์Šต๊ณผ์ œ๋ฅผ ํ†ต๊ณผํ•œ ์ด์šฉ์ž๊ฐ€ ์ ‘์†
-> ๋‹ค์Œ ๋‹จ๊ณ„์˜ ๋™์˜์ƒ์„ ๋ณด์—ฌ์ค€๋‹ค
์‹ค์Šต๊ณผ์ œ๋ฅผ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๊ณ  [์ง€๋„๋‚ด์šฉ]์„ ๋ฐ›์€ ์ด์šฉ์ž๊ฐ€ ์ ‘์†
-> ์‹ค์Šต๊ณผ์ œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค

 

 

SQL ํ…Œ์ด๋ธ” ๋งŒ๋“ค๊ธฐ

SCOTT๊ณ„์ •์— ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ธฐ

LmsUser : ์ด์šฉ์ž ๊ฐ์ฒด์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

LmsAdmin : ๊ด€๋ฆฌ์ž ๊ฐ์ฒด์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

Video: ๋น„๋””์˜ค ๊ฐ์ฒด์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

Practice: ์‹ค์Šต๋ฌธ์ œ ๊ฐ์ฒด์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

LmsLevel: ํ•™์Šต๋‹จ๊ณ„ ๊ฐ์ฒด์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

Learn_History: ํ•™์Šตํžˆ์Šคํ† ๋ฆฌ๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

HwStatus: ์ด์šฉ์žํ•™์Šตํ˜„ํ™ฉ์„ ๋‹ด๋Š” ํ…Œ์ด๋ธ”

 

 

 

 

 

 

์„œ๋ธ”๋ฆฟ๊ณผ VO, DAO, Service ํด๋ž˜์Šค ๋งŒ๋“ค๊ธฐ

Servlet :

LoginServlet.java

AdminLmsServlet.java

LmsServlet.java

 

VO Class:

 

 

๋Œ“๊ธ€