posts - 23,comments - 12,trackbacks - 0


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

          public class DBPhoneLookupReuse extends HttpServlet {

            private Connection con = null;

            public void init() throws ServletException {
              try {
                // Load (and therefore register) the Sybase driver
                Class.forName("com.jnetdirect.jsql.JSQLDriver");
                con = DriverManager.getConnection(
                  "jdbc:JSQLConnect://127.0.0.1/database=JAAS", "sa", "db_password");
              }
              catch (ClassNotFoundException e) {
                throw new UnavailableException("Couldn't load database driver");
              }
              catch (SQLException e) {
                throw new UnavailableException("Couldn't get db connection");
              }
            }

            public void doGet(HttpServletRequest req, HttpServletResponse res)
                                         throws ServletException, IOException {
              res.setContentType("text/html");
              PrintWriter out = res.getWriter();

              out.println("<HTML><HEAD><TITLE>Phonebook</TITLE></HEAD>");
              out.println("<BODY>");

              HtmlSQLResult result =
                new HtmlSQLResult("SELECT UserName,Password FROM Users", con);

              // Display the resulting output
              out.println("<H2>Users:</H2>");
              out.println(result);
              out.println("</BODY></HTML>");
            }

            public void destroy() {
              // Clean up.
              try {
                if (con != null) con.close();
              }
              catch (SQLException ignored) { }
            }
          }

          HtmlSQLResult.java
          import java.sql.*;

          public class HtmlSQLResult {
            private String sql;
            private Connection con;

            public HtmlSQLResult(String sql, Connection con) {
              this.sql = sql;
              this.con = con;
            }

            public String toString() {  // can be called at most once
              StringBuffer out = new StringBuffer();

              // Uncomment the following line to display the SQL command at start of table
              // out.append("Results of SQL Statement: " + sql + "<P>\n");

              try {
                Statement stmt = con.createStatement();

                if (stmt.execute(sql)) {
                  // There's a ResultSet to be had
                  ResultSet rs = stmt.getResultSet();
                  out.append("<TABLE>\n");

                  ResultSetMetaData rsmd = rs.getMetaData();

                  int numcols = rsmd.getColumnCount();
            
                  // Title the table with the result set's column labels
                  out.append("<TR>");
                  for (int i = 1; i <= numcols; i++)
                    out.append("<TH>" + rsmd.getColumnLabel(i));
                  out.append("</TR>\n");

                  while(rs.next()) {
                    out.append("<TR>");  // start a new row
                    for(int i = 1; i <= numcols; i++) {
                      out.append("<TD>");  // start a new data element
                      Object obj = rs.getObject(i);
                      if (obj != null)
                        out.append(obj.toString());
                      else
                        out.append("&nbsp;");
                      }
                    out.append("</TR>\n");
                  }

                  // End the table
                  out.append("</TABLE>\n");
                }
                else {
                  // There's a count to be had
                  out.append("<B>Records Affected:</B> " + stmt.getUpdateCount());
                }
              }
              catch (SQLException e) {
                out.append("</TABLE><H1>ERROR:</H1> " + e.getMessage());
              }
            
              return out.toString();
            }
          }

          posted on 2005-08-24 14:49 my java 閱讀(465) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 呼伦贝尔市| 常宁市| 沂南县| 彭水| 临湘市| 博兴县| 太谷县| 琼结县| 志丹县| 侯马市| 奉贤区| 双鸭山市| 屏南县| 五大连池市| 黄山市| 凭祥市| 文登市| 定日县| 宁阳县| 商河县| 福海县| 大竹县| 科尔| 德兴市| 磴口县| 名山县| 紫云| 囊谦县| 泰州市| 蓬安县| 达拉特旗| 蛟河市| 当阳市| 佛坪县| 左贡县| 兴安县| 安福县| 龙山县| 翁源县| 咸宁市| 邳州市|