·ÖÀà
ÌṩÏêϸµÄ´úÂë-ÈçºÎÔÚServletÖÐÁ¬½ÓÊý¾Ý¿â¡¬
| ¡¡¡¡import java.sql.*; |
| ¡¡¡¡import java.io.*; |
| ¡¡¡¡import javax.servlet.*; |
| ¡¡¡¡import javax.servlet.http.*; |
| ¡¡¡¡public class Databas | e extends HttpServlet |
| ¡¡¡¡{¡¡ |
| ¡¡¡¡public void doGet ( |
| ¡¡¡¡¡¡¡¡HttpServletRequest¡¡¡¡request, |
| ¡¡¡¡¡¡¡¡HttpServletResponse¡¡¡¡response |
| ¡¡¡¡) throws ServletException, IOException |
| ¡¡¡¡{ |
| ¡¡¡¡¡¡¡¡PrintWriter¡¡¡¡¡¡¡¡out; |
| ¡¡¡¡¡¡¡¡String¡¡¡¡¡¡¡¡¡¡ | ¡¡ title = "Simple Servlet c | onnecting to Oracle DB"; |
| ¡¡¡¡¡¡¡¡// set content t | ype and other response heade | r fields first |
| ¡¡¡¡response.setContentType("text/ht | ml;charset=GB2312"); |
| ¡¡¡¡¡¡¡¡// then write the data of th | e response |
| ¡¡¡¡¡¡¡¡out = response.getWriter(); |
| ¡¡¡¡out.println("<HTML><HEAD><TITLE>"); |
| ¡¡¡¡¡¡¡¡out.println(title); |
| ¡¡¡¡¡¡¡¡out.println("</TITLE></HEAD><BODY>"); |
| ¡¡¡¡¡¡¡¡out.println("<H1>" + title + "</H1>"); |
| ¡¡¡¡¡¡¡¡out.println("<P>This is output from SimpleServlet."); |
| ¡¡¡¡String driverName = | "oracle.jdbc.driver.OracleDr | iver"; |
| ¡¡¡¡Driver d; |
| ¡¡¡¡Connection con;¡¡¡¡ |
| ¡¡¡¡Statement stmt; |
| ¡¡¡¡ResultSet results; |
| ¡¡¡¡¡¡¡¡try { |
| ¡¡¡¡¡¡¡¡¡¡¡¡d = (Driver)Class.forNam | e(driverName).newInstance(); |
| ¡¡¡¡¡¡¡¡¡¡¡¡con = Driver ndb@111.222.1.36:1521:PC | Manager.getConnection("jdbc: 36");¡¡ | oracle:thin:ndb/ |
| ¡¡¡¡stmt = con.createStatement();¡¡ |
| ¡¡¡¡String sqlstr = "sel | ect SYSDATE from dual";¡¡ |
| ¡¡¡¡results = stmt.executeQuery(sqlstr);¡¡ |
| ¡¡¡¡displayResult(results,out); |
| ¡¡¡¡¡¡¡¡stmt.close(); |
| ¡¡¡¡con.close(); |
| ¡¡¡¡¡¡¡¡}¡¡ |
| ¡¡¡¡¡¡¡¡catch (Exception e) { |
| ¡¡¡¡¡¡¡¡¡¡¡¡out.println( | "error: " + e.toString());¡¡ | ¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡}¡¡ |
| ¡¡¡¡¡¡¡¡out.println("</BODY></HTML>"); |
| ¡¡¡¡¡¡¡¡out.close(); |
| ¡¡¡¡} |
| ¡¡¡¡public void displayResult(Result | Set results,PrintWriter out){¡¡¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡StringBuffer buf = new Strin | gBuffer(); |
| ¡¡¡¡¡¡¡¡String temp; |
| ¡¡¡¡¡¡¡¡try { |
| ¡¡¡¡¡¡¡¡¡¡¡¡ResultSetMet | aData rsmd = results.getMeta | Data(); |
| ¡¡¡¡¡¡¡¡¡¡¡¡int numCols | = rsmd.getColumnCount(); |
| ¡¡¡¡¡¡¡¡¡¡¡¡int i, rowcount = 0; |
| ¡¡¡¡¡¡¡¡¡¡¡¡// get column header info |
| ¡¡¡¡¡¡¡¡¡¡¡¡for (i=1; i <= numCols; i++){ |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if (i > 1) buf.append(","); |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡buf.append(rsmd.getC | olumnLabel(i)); |
| ¡¡¡¡¡¡¡¡¡¡¡¡} |
| ¡¡¡¡¡¡¡¡¡¡¡¡buf.append(" |
| ¡¡¡¡");¡¡¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡while (resul | ts.next() && rowcount < 1 | 00){¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for (i=1 | ; i <= numCols; i++) { |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if (i > 1) buf.append(",");¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡buf.append((resu | lts.getString(i))); |
| ¡¡¡¡¡¡¡¡¡¡¡¡} |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡buf.append("<br>"); |
| ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡rowcount++; |
| ¡¡¡¡¡¡¡¡¡¡¡¡} |
| ¡¡¡¡¡¡¡¡¡¡¡¡out.println("<br>"); |
| ¡¡¡¡¡¡¡¡¡¡¡¡out.println(buf.toString()); |
| ¡¡¡¡¡¡¡¡¡¡¡¡results.close();¡¡¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡} catch (Exception e) { |
| ¡¡¡¡¡¡¡¡¡¡¡¡out.println( | "error: " + e.toString());¡¡ | ¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡ |
| ¡¡¡¡¡¡¡¡¡¡¡¡return; |
| ¡¡¡¡¡¡¡¡} |
| ¡¡¡¡}¡¡ |
| ¡¡¡¡} |