JDBC Test in Oracle
Java 프로그램과 연결할 때 사용할 JDBC Driver는 설치된 Oracle 디렉토리에서 검색해보면 해당 오라클 버전의 JDBC Driver를 찾을 수가 있다. 만약 찾지 못하면 아래에서 다운로드할 수 있다.
package web.jdbc.test; import java.sql.*; public class OracleTest { public static void main(String[] args) { // 데이터베이스 연결관련 변수 선언 Connection conn = null; Statement stmt = null; // 데이터베이스 연결관련정보를 문자열로 선언 String jdbc_driver = "oracle.jdbc.OracleDriver"; String db_url = "jdbc:oracle:thin:@211.183.3.5:1521:ORCL"; try{ // JDBC 드라이버 로드하여 DriverManager에 등록함 Class.forName(jdbc_driver); // 로드된 드라이버를 이용하여 DB와 연결하고 Connection 인스턴스 구함 conn = DriverManager.getConnection(db_url,"user09","user09"); // Connection 객체로 부터 SQL문 작성을 위한 Statement 준비 stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from emp"); while(rs.next()) { System.out.println(rs.getString(1)+" " +rs.getString(2)+" " +rs.getString(3)+" " +rs.getString(4)+" " +rs.getString(5)); } rs.close(); stmt.close(); conn.close(); } catch(Exception e) { System.out.println(e); } System.out.println("테스트 끝"); } }
오라클 디비랑 잘 연결 되어서 요렇게 출력된다~~
※DAO - data access object
※DTO - data transfer object
※ORM - (Object-relational mapping)
<%@page import="web.jdbc.test.Employee"%> <%@page import="java.util.ArrayList"%> <%@page import="java.sql.*"%> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <jsp:useBean id="dao" class="web.jdbc.test.EmpDAO"/> <% ArrayList<Employee> list = dao.getAllEmps(); %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"> <title>오라클 접속 테스트</title> </head> <body> <ol> <% for(int i=0;i<list.size();i++){ Employee emp = list.get(i);%> <li><%=emp.getEmpno() %> / <%=emp.getEname() %> / <%=emp.getDeptno() %> <%} %> </ol> </body> </html>Employee.java
package web.jdbc.test; public class Employee { private int empno; //사원번호 private String ename;//사원이름 private int deptno;//부서번호 private String hiredate;//고용날짜 private int sal;//봉급 private int mgr;//매니져 public int getEmpno() { return empno; } public void setEmpno(int empno) { this.empno = empno; } public String getEname() { return ename; } public void setEname(String eanme) { this.ename = eanme; } public int getDeptno() { return deptno; } public void setDeptno(int deptno) { this.deptno = deptno; } public String getHiredate() { return hiredate; } public void setHiredate(String hiredate) { this.hiredate = hiredate; } public int getSal() { return sal; } public void setSal(int sal) { this.sal = sal; } public int getMgr() { return mgr; } public void setMgr(int mgr) { this.mgr = mgr; } }
package web.jdbc.test; import java.sql.*; import java.util.ArrayList; public class EmpDAO { // 데이터베이스 연결관련 변수 선언 private Connection conn = null; private Statement stmt = null; private ResultSet rs = null; // 데이터베이스 연결관련정보를 문자열로 선언 String jdbc_driver = "oracle.jdbc.OracleDriver";//ojdbc14.jar에 있다. String db_url = "jdbc:oracle:thin:@211.183.3.5:1521:ORCL"; private Connection getConn() throws Exception{ // JDBC 드라이버 로드하여 DriverManager에 등록함 Class.forName(jdbc_driver); // 로드된 드라이버를 이용하여 DB와 연결하고 Connection 인스턴스 구함 Connection conn = DriverManager.getConnection(db_url,"user09","user09"); return conn; } private void closeAll(ResultSet rs,Statement stmt,Connection conn){ try{ if(rs!=null)rs.close(); if(stmt!=null)stmt.close(); if(conn!=null)conn.close(); } catch (SQLException e) { e.printStackTrace(); } } public ArrayList<Employee> getAllEmps(){ String sql="select * from emp"; Connection conn = null; Statement stmt = null; ResultSet rs =null; try { conn = getConn(); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); Employee emp = null; ArrayList<Employee> list = new ArrayList<Employee>(); while(rs.next()){ emp = new Employee(); emp.setEmpno(rs.getInt("EMPNO")); emp.setEname(rs.getString("ENAME")); emp.setDeptno(rs.getInt("DEPTNO")); list.add(emp); } return list; } catch (Exception e) { e.printStackTrace(); }finally{//오류와 관련없이 항상 실행 closeAll(rs,stmt,conn); } return null; } }
'JSP > 2012.04강의(MySQL)' 카테고리의 다른 글
복습10 (0) | 2012.07.17 |
---|---|
복습8 (0) | 2012.07.13 |
복습7 회원 정보 저장 폼 (0) | 2012.07.12 |
복습6 Cookie,Session을 이용한 login 처리,자바빈(JavaBeans) (0) | 2012.07.11 |
복습5 페이지 모듈화,error page,Cookie (0) | 2012.07.10 |