lesson10_JSP_DaoDto.zip
0.01MB
DTO(Data Transfer Object)
Data Transfer Object의 약자로, 계층간 데이터 교환을 위한 자바빈즈를 의미합니다.
이 객체는 데이터베이스 레코드의 데이를 맵핑하기 위해 만들어졌으며, 접근을 위한 Getter, Setter를 가지고 있습니다.
package lesson10_JSP_DaoDto.dto;
public class CountryDTO {
private String COUNTRY_ID;
private String COUNTRY_NAME;
private String REGION_ID;
public CountryDTO() {
// TODO Auto-generated constructor stub
}
public CountryDTO(String cOUNTRY_ID, String cOUNTRY_NAME, String rEGION_ID) {
super();
COUNTRY_ID = cOUNTRY_ID;
COUNTRY_NAME = cOUNTRY_NAME;
REGION_ID = rEGION_ID;
}
public String getCOUNTRY_ID() {
return COUNTRY_ID;
}
public void setCOUNTRY_ID(String cOUNTRY_ID) {
COUNTRY_ID = cOUNTRY_ID;
}
public String getCOUNTRY_NAME() {
return COUNTRY_NAME;
}
public void setCOUNTRY_NAME(String cOUNTRY_NAME) {
COUNTRY_NAME = cOUNTRY_NAME;
}
public String getREGION_ID() {
return REGION_ID;
}
public void setREGION_ID(String rEGION_ID) {
REGION_ID = rEGION_ID;
}
}
DAO(Data Access Object)
Data Access Object의 약자로, 데이터의 조회 및 조작하는 기능[ CRUD(생성, 읽기, 갱신, 삭제) ]전담하는 객체입니다.
데이터베이스에 접근하기 위한 로직과 비즈니스 로직을 분리하여 코드의 간결화 및 모듈화, 유지보수 등의 장점을 가질 수 있습니다.
package lesson10_JSP_DaoDto.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import lesson10_JSP_DaoDto.dto.CountryDTO;
public class CountryDAO {
public ArrayList<CountryDTO> select() {
ArrayList<CountryDTO>list = new ArrayList<CountryDTO>();
Connection con = null;
PreparedStatement pstmt = null;
ResultSet result = null;
DataSource dataSource;
try {
Context context = new InitialContext();
dataSource = (DataSource) context.lookup("java:/comp/env/jdbc/Oracle11g");
con = dataSource.getConnection();
String sql = "SELECT * FROM COUNTRIES";
pstmt = con.prepareStatement(sql);
result = pstmt.executeQuery(sql);
while (result.next()) {
String COUNTRY_ID = result.getString("COUNTRY_ID");
String COUNTRY_NAME = result.getString("COUNTRY_NAME");
String REGION_ID = result.getString("REGION_ID");
CountryDTO countryDTO = new CountryDTO(COUNTRY_ID, COUNTRY_NAME, REGION_ID);
list.add(countryDTO);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
result.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
}
'Web Programming > JSP' 카테고리의 다른 글
11. JSP 한글처리 (0) | 2020.03.25 |
---|---|
10. JSP EL & JSTL (0) | 2020.03.24 |
8. JSP ConnectionPool (0) | 2020.03.24 |
7. JSP DB Connect (0) | 2020.03.23 |
6. JSP Cookie & Session (0) | 2020.03.21 |