본문 바로가기

JSP

MVC 모델 (4)

▷ MVC 모델을 위한 5개의 자바 패키지

▷ VO 패키지

▷ ActionForward 클래스

    FrontController(서블릿) 에서 클라이언트로부터의 요청을 받아 Action 클래스 등에서 작업을 처리 후 View

         페이지 또는 다른 Action 클래스로 포워딩할 때
    → 포워딩 할 URL(주소) 와 포워딩 방식(Dispatcher vs Redirect)을 다루기 위한 클래스

          = DTO(= Bean) 역할을 수행

 

vo.ActionForward.java

package vo;

public class ActionForward {
	private String path; // 포워딩 주소를 저장
	private boolean isRedirect; // 포워딩 방식을 저장(true : Redirect 방식, false : Dispatcher 방식)
	
	// Getter/Setter 메서드 정의
	public String getPath() {
		return path;
	}
	public void setPath(String path) {
		this.path = path;
	}
	public boolean isRedirect() {
		return isRedirect;
	}
	public void setRedirect(boolean isRedirect) {
		this.isRedirect = isRedirect;
	}
	
}

 

▷ PageInfo 클래스

    → 페이징 처리 관련 정보를 저장하는 PageInfo 클래스

 

vo.PageInfo.java

package vo;

public class PageInfo {
	private int pageNum; // 현재 페이지 번호
	private int maxPage; // 최대 페이지 번호
	private int startPage; // 시작 페이지 번호
	private int endPage; // 끝 페이지 번호
	private int listCount; // 총 게시물 수
	
	public PageInfo() {}

	public PageInfo(int pageNum, int maxPage, int startPage, int endPage, int listCount) {
		super();
		this.pageNum = pageNum;
		this.maxPage = maxPage;
		this.startPage = startPage;
		this.endPage = endPage;
		this.listCount = listCount;
	}

	public int getPageNum() {
		return pageNum;
	}

	public void setPageNum(int pageNum) {
		this.pageNum = pageNum;
	}

	public int getMaxPage() {
		return maxPage;
	}

	public void setMaxPage(int maxPage) {
		this.maxPage = maxPage;
	}

	public int getStartPage() {
		return startPage;
	}

	public void setStartPage(int startPage) {
		this.startPage = startPage;
	}

	public int getEndPage() {
		return endPage;
	}

	public void setEndPage(int endPage) {
		this.endPage = endPage;
	}

	public int getListCount() {
		return listCount;
	}

	public void setListCount(int listCount) {
		this.listCount = listCount;
	}
	
}

 

▷ FileBoardDTO

    → DB에서 조회한 데이터를 저장하기 위한 클래스

 

vo.FileBoardDTO.java

package vo;

import java.sql.Date;

public class FileBoardDTO {
	private int num;
	private String name;
	private String pass;
	private String subject;
	private String content;
	private String file;
	private String original_file;
	private int re_ref; // 참조글번호
	private int re_lev; // 들여쓰기레벨
	private int re_seq; // 답글순서번호
	private Date date;
	private int readcount;
	
	public int getNum() {
		return num;
	}
	public void setNum(int num) {
		this.num = num;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPass() {
		return pass;
	}
	public void setPass(String pass) {
		this.pass = pass;
	}
	public String getSubject() {
		return subject;
	}
	public void setSubject(String subject) {
		this.subject = subject;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
	public String getFile() {
		return file;
	}
	public void setFile(String file) {
		this.file = file;
	}
	public String getOriginal_file() {
		return original_file;
	}
	public void setOriginal_file(String original_file) {
		this.original_file = original_file;
	}
	public int getRe_ref() {
		return re_ref;
	}
	public void setRe_ref(int re_ref) {
		this.re_ref = re_ref;
	}
	public int getRe_lev() {
		return re_lev;
	}
	public void setRe_lev(int re_lev) {
		this.re_lev = re_lev;
	}
	public int getRe_seq() {
		return re_seq;
	}
	public void setRe_seq(int re_seq) {
		this.re_seq = re_seq;
	}
	public Date getDate() {
		return date;
	}
	public void setDate(Date date) {
		this.date = date;
	}
	public int getReadcount() {
		return readcount;
	}
	public void setReadcount(int readcount) {
		this.readcount = readcount;
	}
	
	@Override
	public String toString() {
		return "FileBoardDTO [num=" + num + ", name=" + name + ", pass=" + pass + ", subject=" + subject + ", content="
				+ content + ", file=" + file + ", original_file=" + original_file + ", re_ref=" + re_ref + ", re_lev="
				+ re_lev + ", re_seq=" + re_seq + ", date=" + date + ", readcount=" + readcount + "]";
	}
	
}

 

'JSP' 카테고리의 다른 글

MVC 모델 (6) - 최근 공지사항 메인페이지에 출력  (0) 2022.03.01
MVC 모델 (5)  (0) 2022.02.24
MVC 모델 (3)  (0) 2022.02.24
MVC 모델 (2) (개발환경세팅)  (0) 2022.02.24
MVC 모델 (1) (JSTL : JSP Standard Tag Library)  (0) 2022.02.22