레이블이 jsp인 게시물을 표시합니다. 모든 게시물 표시
레이블이 jsp인 게시물을 표시합니다. 모든 게시물 표시

2012-10-31

java] jsp jdbc 연결 예제




출처  : http://allinfo.tistory.com/14


파일명 : jdbctest.jsp

<%@ page contentType="text/html;charset=euc-kr" import="java.sql.*" %>
<% request.setCharacterEncoding("euc-kr"); %>
<%
 // 데이터베이스 연결관련 변수 선언
 Connection conn = null;
 Statement stmt = null;
 // 데이터베이스 연결관련정보를 문자열로 선언
 String jdbc_driver = "oracle.jdbc.driver.OracleDriver";
 String jdbc_url = "jdbc:oracle:thin:@localhost:1521:ORCL";

 try{
  // JDBC 드라이버 로드
  Class.forName(jdbc_driver);
  // 데이터베이스 연결정보를 이용해 Connection 인스턴스 확보
  conn = DriverManager.getConnection(jdbc_url,"scott","tiger");
  // Connection 클래스의 인스턴스로 부터 SQL  문 작성을 위한 Statement 준비
  stmt = conn.createStatement();
  // username 값을 입력한 경우 sql 문장을 수행.
if(request.getParameter("username") != null) {
   String sql = "insert into jdbc_test values('"+request.getParameter("username")+"','"+request.getParameter("email")+"')";
   stmt.executeUpdate(sql);
  }
 }
 catch(Exception e) {
  System.out.println(e);
 }
%>
<HTML>
<HEAD><TITLE>JDBC 테스트 </TITLE></HEAD>
<BODY>
<center>
<H2>이벤트 등록</H2>
<HR>
<form name=form1 method=post action=jdbctest.jsp>
등록이름 : <input type=text name=username>
email주소 : <input type=text name=email size=20>
<input type=submit value="등록">
</form>
<HR>
</center>
# 등록 목록<P>
<%
 try{
  // select 문장을 문자열 형태로 구성한다.  String sql = "select username, email from jdbc_test";
  // select 를 수행하면 데이터정보가 ResultSet 클래스의 인스턴스로 리턴됨.  ResultSet rs = stmt.executeQuery(sql);
  int i=1;
  // 마지막 데이터까지 반복함.  while(rs.next()) {
   out.println(i+" : "+rs.getString(1)+" , "+rs.getString("email")+"<BR>");
   i++;
  }
  // 사용한 자원의 반납.
  rs.close();
  stmt.close();
  conn.close();
 }
 catch(Exception e) {
  System.out.println(e);
 }
%>
</BODY>
</HTML>