본문 바로가기
JSP/성낙현의 JSP 자바 웹 프로그래밍

JSP, Oracle을 사용한 자료실형 게시판(MVC 패턴)

by k-mozzi 2023. 6. 29.
반응형
Preface

 

이번 장에선 MVC 패턴을 이용해 비밀번호로 사용자를 검증하는 자료실형 게시판을 만들었다.

 

첨부파일을 업로드할 수 있는 점을 제외하면 전체적인 기능과 코드는 이전에 제작한 회원제 게시판과 비슷하다.

 

다만, 서블릿을 이용해 각각의 기능을 분리하여 코드를 작성하다보니 파일도 많아지고 원하는 기능을 추가하기도 복잡해진 것 같다.

 

글을 업로드한 후 코드를 다시 한 번 훑어보며 부족한 부분을 수정할 생각이다.

 

 

 

MVC 패턴을 사용한 코드 작성을 간략히 정리하자면

    1) DTO를 통해 사용할 변수를 선언

    2) DAO에서 DB 연결 및 사용할 메서드를 정의

    3) 서블릿, 즉 자바 클래스(*.Controller)에서 메서드를 사용하여 작업 처리

    4) 뷰(jsp 파일)를 통해 화면에 내용 출력

순인 것 같다.


- MVC: Model, View, Controller의 약자로, 소프트웨어 개발 방법론의 일종
1) Model: 업무 처리 로직 및 DB 관련 작업 담당
2) View: JSP 페이지와 같이 사용자에게 보여지는 부분을 담당
3) Controller: 모델과 뷰의 제어를 담당
→ 사용자의 요청을 받아 분석한 후 필요한 업무 처리 로직(모델)을 호출하여, 모델로부터 반환된 결괏값을 출력할 뷰를 선택한 후 전달한다.


- 모델 2 방식: MVC 패턴을 사용한다.
1) JSP는 뷰로 사용하고, 서블릿은 컨트롤러로 사용한다.
2) 구조가 복잡하여 개발 기간이 길어질 수도 있다.
3) 코드가 간결해져 유지보수가 쉽다.

 

1. 테이블 및 시퀀스 생성

 

 

- 테이블 생성

create table mvcboard (
	idx number primary key, 
	name varchar2(50) not null, 
	title varchar2(200) not null, 
	content varchar2(2000) not null, 
	postdate date default sysdate not null, 
	ofile varchar2(200), 
	sfile varchar2(30), 
	downcount number(5) default 0 not null, 
	pass varchar2(50) not null, 
	visitcount number default 0 not null
);

 

 

- 오라클에선 하나의 시퀀스를 둘 이상의 테이블에서 사용할 수 있어 이전에 만들어둔 시퀀스를 사용했다.

 


 

2. 구현 예시

 

 

- 메인 화면

 

 

※ 전체 코드는 깃허브의 jsp 디렉토리에 업로드되어 있다.

→ 링크: https://github.com/k-mozzi/JSP-WEB-Programming

 

GitHub - k-mozzi/JSP-WEB-Programming

Contribute to k-mozzi/JSP-WEB-Programming development by creating an account on GitHub.

github.com

 

728x90
반응형

댓글