JDBCReadServlet.java
上传用户:mingda
上传日期:2017-06-20
资源大小:27691k
文件大小:4k
源码类别:

OA系统

开发平台:

Java

  1. //package projects.toptais;
  2. import java.io.*;
  3. import java.sql.*;
  4. import javax.servlet.http.*;
  5. import javax.naming.Context;
  6. import javax.naming.InitialContext;
  7. import javax.naming.NamingException;
  8. import javax.sql.DataSource;
  9. public class JDBCReadServlet extends HttpServlet {
  10.   
  11.   /*
  12.    * This method is called when the servlet is first initialized.
  13.    * Note here that both the initial lookup into the WebLogic JNDI
  14.    * naming context and the location of a DataSource object from it
  15.    * are placed here.  This ensures that the operations are only done
  16.    * once instead of every time that the servlet is accessed.  This is
  17.    * very important for efficiency.
  18.    */
  19.   public void init() {
  20.     try  {
  21.       /* Create a connection to the WebLogic JNDI Naming Service:
  22.        */
  23.       ctx = new InitialContext();
  24.       /*  Create a new DataSource by Locating It in the Naming Service:
  25.           OracleThinPool is the name of the connection pool name configed in the WebLogic server container.
  26.           WebLogic data connection pool configration:
  27.           {
  28.            URL:                     jdbc:oracle:thin:@pyds:1521:toptais  //"toptais" is database name in our RDBMS. "pyds" is DB server name.
  29.             Driver Classname:        oracle.jdbc.driver.OracleDriver
  30.             Properties (key=value):  user=scott
  31.                                      password=tiger
  32.                                      dll=ocijdbc8
  33.                                      protocol=thin
  34.           }
  35.        */
  36.       ds = (javax.sql.DataSource) 
  37.         ctx.lookup ("OracleThinPool");
  38.     } catch (Exception E) {
  39.       /* 
  40.          Handle exception here. 
  41.       */
  42.       System.out.println("Init Error: " + E);
  43.     }
  44.   }
  45.   public void service(HttpServletRequest requ, 
  46.     HttpServletResponse resp) 
  47.     throws IOException
  48.   {
  49.     Connection myConn = null; 
  50.     try  {
  51.       PrintWriter out = resp.getWriter();
  52.       out.println("<html>");
  53.       out.println("<head><title>_JDBCReadServlet</title></head>");
  54.       out.println("<body>");
  55.       out.println("<h1>_JDBCReadServlet</h1>");      
  56.       /* Get a new JDBC connection from the DataSource:
  57.        */
  58.       myConn = ds.getConnection();
  59.       /* Create an Instance of the java.sql.Statement class 
  60.          and use the factory method called createStatement() 
  61.          available in the Connection class to create a new statement. 
  62.       */
  63.       stmt = myConn.createStatement();
  64.       /* Use the shortcut method the available in the Statement 
  65.          class to execute our query.  We are selecting all rows 
  66.          from the EMPLOYEE table. 
  67.       */
  68.       rs = stmt.executeQuery("SELECT FSTRTABLENAME,FSTRCLASS FROM FCCELL ");//EMPLOYEE is the table name in the toptais database.
  69.       /* This enumerates all of the rows in the ResultSet and 
  70.          prints out the values at the columns named ID, NAME, 
  71.          LOCATION. 
  72.       */
  73.       while (rs.next()) {
  74.         out.println(rs.getString("FSTRTABLENAME") + "- " + 
  75.           rs.getString("FSTRCLASS") + "- " + "<p>");
  76.       }
  77.       /* Release the ResultSet and Statement.
  78.        */
  79.       rs.close();
  80.       stmt.close();
  81.     } catch (Exception E) {
  82.       /* 
  83.          Handle exception here. 
  84.       */
  85.       System.out.println("Service Error: " + E);
  86.     } finally {
  87.       if (rs != null) {
  88.         try { rs.close(); } catch (Exception ignore) {};
  89.       }
  90.       if (stmt != null) {
  91.         try { stmt.close(); } catch (Exception ignore) {};
  92.       }
  93.       if (myConn != null) {
  94.         try { myConn.close(); } catch (Exception ignore) {};
  95.       }
  96.     }
  97.   }
  98.   /* 
  99.    * Local Variables 
  100.    */
  101.   Context ctx;  
  102.   DataSource ds;
  103.   Statement stmt;
  104.   ResultSet rs;
  105. }