电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 设计学院 > 网络编程 > 数据库 > 正文
如何直接在浏览器内运行SQL命令
如何直接在浏览器内运行SQL命令
2005-12-30 19:21:15  文/45IT收集   出处:电脑软硬件应用网   
n.setAttribute("message", message);
 session.setAttribute("sqlStatement", sqlStatement);
 


  接下来,最后两个语句创建一个RequestDispatcher,并转发request和response对象给前文介绍的JSP页面: 

RequestDispatcher dispatcher =
     getServletContext().getRequestDispatcher(
         "/sql/sql_gateway.jsp");
 dispatcher.forward(request, response);
 


  四、编写工具类 

  下面来看看工具类SQLUtil的代码: 

package test;
import java.sql.*;
public class SQLUtil{
 


  SQLUtil类包含一个getHtmlRows静态方法,前面的Servlet正是通过调用该方法将结果集格式化成HTML表格。getHtmlRows的输入参数是一个ResultSet对象,其返回值是一个String对象,这个String对象的内容是记录集的所有列表题和行的HTML代码。为了构造出这样一个String对象,getHtmlRows声明了一个名为htmlRows的StringBuffer对象,然后在方法执行过程中向这个StringBuffer对象追加数据。在getHtmlRows方法的末尾,我们用toString方法将StringBuffer的内容转换成String,最后将这个String返回给Servlet: 

public static synchronized String getHtmlRows(ResultSet results)
throws SQLException{
    StringBuffer htmlRows = new StringBuffer();
    ResultSetMetaData metaData = results.getMetaData();
    int columnCount = metaData.getColumnCount();
    // 将记录集中列的名称作为HTML表格列的标题
    htmlRows.append("<tr>");
    for (int i = 1; i <= columnCount; i++)
        htmlRows.append("<td><b>" + metaData.getColumnName(i) + "</td>");
    htmlRows.append("</tr>");
    // 对于结果集中的每一行...
    while (results.next()){
        htmlRows.append("<tr>");
        // 将该行中的每一个列转换成一个表格单元
        for (int i = 1; i <= columnCount; i++)
            htmlRows.append("<td>" + results.getString(i) + "</td>");
    }
    htmlRows.append("</tr>");
    return htmlRows.toString();
}
 


  为了获得记录集对象的列标题,getHtmlRows方法利用ResultSet的getMetaData方法来创建一个ResultSetMetaData对象,ResultSetMetaData对象包含了有关记录集的描述信息,例如列的数量、列的名称可以分别调用ResultSetMetaData的getColumnCount和getColumnName方法获得。 

  为了提取记录集的数据,getHtmlRows方法利用一个嵌套的循环,即while循环里面嵌套的for循环,来提取每一个行里面每一个列的值。在循环之内,我们用记录集的getString方法来获取各个字段的值,不管字段值原来的类型是什么,getString方法都会将它转换成String。 

  请注意这个方法的声明中带有synchronized关键词,这是为了避免两个或两个以上的Servlet线程同时执行该方法。 

上一页  [1] [2] 

  • 上一篇文章:

  • 下一篇文章:
  • 最新热点 最新推荐 相关文章
    javascript实用技巧点滴(三)
    javascript实用技巧点滴(2)
    javascript实用技巧点滴(1)
    javascript教程 - 第一课 1.1
    用js制作完善的日,月组合下拉框
    利用JSP编程建立动态Web站点
    用PHP制作留言板
    PHP生成动态WAP页面
    PHP实现文件下载
    PHP4的session功能
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号