컴파일을 할때는 아무런 에러도 없습니다.
그런데, 웹브라우저에서 띄우면 아래와 같은 메세지가 뜹니다.
[[ 오류 메세지 ]]========================
SQLException caught: 20
=========================================
오라클에 접속을 제대로 못하는것인지 잘 모르겠습니다.
클래스 패스도 제대로 잡았고, 아무 문제가 없는것 같은데, 책에서 보니까 접속을
얻는데 관련된 오류처리라고만 나와 있습니다.
어떻게 해야 될지 모르겠습니다.
전문가님들께서 좀 도와주세요. 그럼 즐거운 통신되세요. ...^.^
// 사용환경 : 윈 98 에서 자바 웹서버 2.0과 퍼스널 오라클 8i를 사용하고
있습니다.
[[ 프로그램 소스 ]] =====================
// 예제 9 - 1 : JDBC가 가능한 서블릿
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DBPhoneLookup extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
res.setContentType("text/html");
PrintWriter out = res.getWriter();
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection(
"jdbc:oracle:thin:@127.0.0.1:1521:ORASID", "system",
"manager");
stmt = con.createStatement();
rs = stmt.executeQuery("SELECT ORDER_ID, TOTAL FROM ORDERS");
out.println("<html><head><title>Phonebook</title></head>");
out.println("<body>");
out.println("<ul>");
while(rs.next()) {
out.println("<li>" + rs.getString("order_id") + " " +
rs.getString("total"));
}
out.println("</ul>");
out.println("</body></html>");
}
catch(ClassNotFoundException e) {
out.println("Couldn't load database driver: " + e.getMessage());
}
catch(SQLException e) {
out.println("SQLException caught: " + e.getMessage());
}
finally {
try {
if(con != null) con.close();
}
catch(SQLException ignored) { }
}
}
}
|