FileDocCategorySizeDatePackage
DedicatedConnectionServlet.javaAPI DocExample3017Mon Jun 18 19:08:18 BST 2001None

DedicatedConnectionServlet.java

import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class DedicatedConnectionServlet extends HttpServlet {
  Connection connection;
  long       connected;

  public void init(ServletConfig config)
   throws ServletException {
    super.init(config);
    try { 
      // load the driver
      Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    }
    catch (ClassNotFoundException e) {
      throw new UnavailableException(
       "DedicatedConnection.init() ClassNotFoundException: " + 
       e.getMessage());
    }
    catch (IllegalAccessException e) {
      throw new UnavailableException(
       "DedicatedConnection.init() IllegalAccessException: " + 
       e.getMessage());
    }
    catch (InstantiationException e) {
      throw new UnavailableException(
       "DedicatedConnection.init() InstantiationException: " + 
       e.getMessage());
    }

    try {
      // establish a connection
      connection = DriverManager.getConnection(
       "jdbc:oracle:thin:@dssw2k01:1521:orcl", "scott", "tiger");
      connected = System.currentTimeMillis();
    }
    catch (SQLException e) {
      throw new UnavailableException(
       "DedicatedConnection.init() SQLException: " + 
       e.getMessage());
    }
  }

  public void doGet(
   HttpServletRequest request, HttpServletResponse response) 
   throws IOException, ServletException {

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html>");
    out.println("<head>");
    out.println("<title>A Dedicated Connection</title>");
    out.println("</head>");
    out.println("<body>");
    
    Statement statement = null;
    ResultSet resultSet = null;
    String    userName  = null;  
    try { 
      // test the connection
      statement = connection.createStatement();
      resultSet = statement.executeQuery(
       "select initcap(user) from sys.dual");
      if (resultSet.next())
       userName = resultSet.getString(1);
    }
    catch (SQLException e) {
     out.println(
      "DedicatedConnection.doGet() SQLException: " + 
      e.getMessage() + "<p>");
    }
    finally {
      if (resultSet != null) 
        try { resultSet.close(); } catch (SQLException ignore) { }
      if (statement != null) 
        try { statement.close(); } catch (SQLException ignore) { }
    }
    out.println("Hello " + userName + "!<p>");
    out.println(
     "This Servlet's database connection was created on " + 
     new java.util.Date(connected) + "<p>");
    out.println("</body>");
    out.println("</html>");
  }

  public void doPost(
   HttpServletRequest request, HttpServletResponse response)
   throws IOException, ServletException {
    doGet(request, response);
  }

  public void destroy() {
    // close the connection
    if (connection != null)
      try { connection.close(); } catch (SQLException ignore) { }
  }
}