DB 연동

데이터베이스 연동 순서

1. JDBC 드라이버 로딩

Class.forName(oracle.jdbc.driver.OracleDriver)

2. 데이터베이스 연결

Connection 객체 생성
DriverManager.getConnection()

3. SQL문 실행

Statement 객체 생성
connection.createStatement()

※ Statement 관련 메서드

  • executeQuery(): 쿼리문을 사용할 때 결과값이(ResultSet) 생긴다(select문)
  • executeUpdate(): 테이블의 내용을 수정, 삭제, 삽입할 때 사용(insert, update, delete)

4. 데이터베이스 연결해제

ResultSet 객체로부터 데이터 추출 → ResultSet Close

<%@ page import = "java.sql.*" %>

<% 
// 데이터베이스 연동
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String id = "test", pw = "1234";

Connection connect = DriverManager.getConnection(url, id, pw);

String query = "insert into student values(?, ?, ?, ?)";

// 성능 면에서 Statement 객체보다 PreparedStatement 객체가 성능이 더 좋음
PreparedStatement ps = connect.prepareStatement(query);

ps.setString(1, no);
ps.setString(2, name);
ps.setString(3, pwd);
ps.setString(4, hp);

int n = ps.executeUpdate();

// prepareStatement 메서드의 리턴 값
// 0보다 큰 값은 insert, update, delete한 row의 수를 리턴
// 0인 경우 리턴값이 없다(수정된 row가 없다)

if (n > 0) {
	%>
    <script>
    alert("등록 완료")
    </script>
	<%
} else {
	%>
    <script>
    alert("등록 실패")
    </script>
	<%
}

// resource 반납
ps.close();
connect.close();
%>

좋은 웹페이지 즐겨찾기