티스토리 뷰

JSP와 Servlet만 이용해서 만드는 게시판

1. 스크립트 파일도 나눈다.
2. 페이징 한다.
3. 다중 첨부파일 가능 → 첨부파일의 개수가 리스트에 나와야 한다.
4. 검색기능 → 제목/작성자/내용/첨부파일 이름
5. 조회수 list에 추가 

# 모델 2로 구현하는 자바 웹 프로그래밍 JSP2.2&Servlet3.0 책 참고 


DAO(Data Access Object) 클래스 작성 1  

DAO 클래스는 실제로 데이터베이스와 연동하여 레코드의 추가, 수정, 삭제 작업이 이루어지는 클래스이다.
Action 클래스가 호출되어도 그에 해당하는 데이터베이스 연동 처리는 DAO 클래스에서 이루어지게 된다.
그러니까, 실제 쿼리문이 존재하게 되는 곳이라고 생각하면 되겠다.

작성해야 하는 메소드를 생각해보자. (클래스 안에 메소드 들이 있음)
- 글의 개수 구하기 
- 글 목록 보기
- 글 내용 보기
- 글 등록
- 글 수정
- 글 삭제
- 조회수 업데이트

내가 일단 작성한 DAO 클래스이다. 아직 게시판이 완성되지 않았기 때문에 추가될 수 있다.

하나씩 자세히 작성해보자.
일단 이 DAO 클래스의 이름은 BoardDAO.java 이고, 데이터 빈과 같은 net.board.db package 안에 들어간다. 

아래 소스는 기본 DAO 클래스 이다. 

public BoardDAO() { } 생성자를 선언하였는데 Action 에서 BoardDAO 로 객체를 생성하면 생성자가 호출되며
Connection 객체를 얻어오게 된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package net.board.db;
 
import java.sql.Array;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
 
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
 
 
/**
 * 
 * @author HAEUN
 * DAO클래스 
 * 실제로 데이터 베이스와 연동하는 부분
 * 
 */
 
public class BoardDAO {
    
    Connection con;
    PreparedStatement pstmt;
    ResultSet rs;
    
    public BoardDAO(){
        try{
            Context init= new InitialContext();
            DataSource ds = (DataSource)init.lookup("java:comp/env/jdbc/MariaDB");
            con = ds.getConnection();    
        }catch(Exception ex){
            System.out.println("DB연결 실패:" + ex);
            return;
        }
    }
    
}
cs


이제 다음 포스팅 부터 BoardDAO 클래스 안에 필요한 메소드들을 하나씩 만들어보겠다.




댓글