▷ 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 |