티스토리 뷰

반응형
SMALL

DTO : Data Transfer Object

DAO : Data Access Object

 

 

Data 는 DB의 Table 을 의미 하고, Object 는 Class 를 의미한다.

 

DTO 의 경우 DB Table ( SQL ) 의 Column 명 들을 멤버필드 선언으로 구성되어 있으며 각각 접근 할 수 있게 Setter 및 Getter 와 생성자로 구성되어 있다.

 

간단하게 DTO의 구성을 밑에서 살펴 보겠다. 현재 선언되어 있는

 

멤버필드로는 ID, Name, Cname 으로 구성되어 있다.


DTO.class

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
package my.student;
public class StudentDTO {
    
    private String id;
    private String name;
    private String cname;
    
    //생성자.
    public StudentDTO() {
        super();
    }
 
    //Setter & Getter
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getCname() {
        return cname;
    }
    public void setCname(String cname) {
        this.cname = cname;
    }
    
}
 
cs

 

 

DB Table 에 Column 단위로 저장시키기 위해 DTO Class 를 이용하여 Data 를 DB 에 저장시키는 작업을 수행하게 된다.

 

 

DTO Class 를 만들 때 해야할 일!!

1. Table의 Column명을 (private) 멤버필드로 만들기.

2. Setter & Getter Method를 생성하고 Default 생성자를 만들어 놔야 한다.

 

여기서 중요한 점으로

Table의 Column명 과 DTO 의 멤버필드 명, 나중에 JSP 에서 Form태그의 Name 명이 모두 동일해야 코드가 단순해 지면서 깔끔하게 Data를 주고 받을 수 있다.

 

 

 

DAO 는 DB 와 Connection 으로 데이터를 주고 받는 역활을 수행한다.

 

여기서 간단한 DB 연결 코드로 DAO 의 설명을 마무리 한다.

 

DAO.class

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
package my.student;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
 
public class StudentDAO {
 
    private Connection con;
    private PreparedStatement ps;
    private ResultSet rs;
 
    String url, user, pass;
 
    //생성자.
    public StudentDAO() {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
        url = "jdbc:oracle:thin:@localhost:1521:xe";
        user = "java07";
        pass = "java07";
    }

 

 

}

cs

 

Connection 통신을 하기 위해서는 우선 Library 를 추가해야한다.

 

ojdbc6.jar

 

oracle 설치했으면 oraclexe 폴더 에 jdbc 폴더 안에 있을것이다. 이것을 빌드패스를 통해 라이브러리를 추가 한 후 작업을 진행해야 한다.

 

user 와 pass의 경우 각자 자신의 oracle id및password 를 뜻한다.

간혹 1521 이 아닌 경우가 있으니 꼭 확인해야 한다.

 

생성자 밑으로 자신이 해야 하는 Method 를 추가하여 필요에 따라 JSP 에서 Method 단위로 꺼내 사용하는 방식으로 JSP 는 진행 될 예정이다.

 

다시 말해 DAO는 DB 와 통신을 담당하는 Class 로 생각하면 된다.

 

반응형
LIST
댓글