728x90
0. DB
CREATE table grade(
num NUMBER(3) primary key,
java VARCHAR2(20),
c VARCHAR(20),
grade NUMBER(3)
);
INSERT INTO grade values(1,'A','B',3);
INSERT INTO grade values(2,'B','A',2);
INSERT INTO grade values(3,'C','C',4);
commit;
1. VO.java
src/dao/DAO.java
package vo;
public class VO {
private int num;
private String java;
private String c;
private int grade;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getJava() {
return java;
}
public void setJava(String java) {
this.java = java;
}
public String getC() {
return c;
}
public void setC(String c) {
this.c = c;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}
2. DAO(Data Access Object).java
src/dao/DAO.java
* db에 접속해서 데이터 추가, 삭제, 수정 등 작업을 하는 클래스
package dao;
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 service.DBService;
import vo.VO;
public class DAO {
//DAO(Data Access Object) : 데이터 접근을 목표로 하는 클래스
//single-ton pattern: 해당 클래스의 인스턴스가 1개만 생성됨
static DAO single = null;
public static DAO getInstance() {
//생성되지 않았으면 생성
if (single == null)
single = new DAO();
//생성된 객체정보를 반환
return single;
}
//grade테이블 조회
public List<VO> selectList() {
List<VO> list = new ArrayList<VO>();
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = "SELECT * from grade";
try {
//1.Connection얻어온다
conn = DBService.getInstance().getConnection();
//2.명령처리객체정보를 얻어오기
pstmt = conn.prepareStatement(sql);
//3.결과행 처리객체 얻어오기
rs = pstmt.executeQuery();
while (rs.next()) {
VO vo = new VO();
//현재레코드값=>Vo저장
vo.setNum( rs.getInt("num") );
vo.setJava(rs.getString("java"));
vo.setC(rs.getString("c"));
vo.setGrade(rs.getInt("grade"));
//ArrayList추가
list.add(vo);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
try {
if (rs != null)
rs.close();
if (pstmt != null)
pstmt.close();
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
}
3. WEB
WebContent/WEB.jsp
<%@page import="vo.VO"%>
<%@page import="java.util.List"%>
<%@page import="dao.DAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
DAO dao = DAO.getInstance();
// DAO가 single-ton pattern이기 때문에 getInstance()르 DAO 인스턴스 생성
List<VO> list = dao.selectList();//DAO의 selectList()를 사용해 list를 만든다.
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border='1' style='border-collapse: collapse;'>
<tr>
<th> 번호 </th>
<th> 자바 </th>
<th> C </th>
<th> 성적 </th>
</tr>
<%
for(int i=0; i<list.size(); i++){
VO vo = list.get(i);
%>
<tr>
<td><%= vo.getNum() %> </td>
<td><%= vo.getJava() %> </td>
<td><%= vo.getC() %> </td>
<td><%= vo.getGrade() %> </td>
</tr>
<%}%>
</table>
</body>
</html>
728x90
'# WEB > Java&JSP' 카테고리의 다른 글
[JSP] Create_WEB에서 DB자원 삽입하기 (0) | 2020.11.21 |
---|---|
[JSP] JNDI_JSP와 OracleDB 연동 (0) | 2020.11.20 |
[JSP] JDBC 템플릿 설정/사용법 (0) | 2020.11.20 |
[JSP] 파라미터 전달 (0) | 2020.11.19 |
[JSP] Eclipse 설정 (0) | 2020.11.19 |