jsp实现对数据库的查询(转)

转自百度文库:

a.jsp页面重要代码:


        


            数据库查询
        


        
        在<%=biao%>表查询到的记录如下:
        

<%=queryResult%><%--biao和queryResult是Tag文件返回的对象--%>
    

GetRecord.tag重要代码:
<%@ tag pageEncoding="gbk"%>
<%@ tag import="java.sql.*"%>
<%@ tag import="java.util.*"%>
<%@ attribute name="dataSource" required="true"%><%--从a.jsp页面得到参数dataSource --%>
<%@ attribute name="tableName" required="true"%><%--从a.jsp页面得到参数tableName --%>
<%@ variable name-given="biao" scope="AT_END"%><%--向a.jsp页面返回对象biao --%>
<%@ variable name-given="queryResult" scope="AT_END"%><%--向a.jsp页面返回对象queryResult --%>
<%
    StringBuffer result = new StringBuffer();
    try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDrier");//建立桥接器
    } catch (Exception e) {
    }
    Connection con;
    Statement sql;
    try {
        result.append("");
        con = DriverManager.getConnection("jdbc:odbc:" + dataSource,
                "", "");//和数据库建立连接,注:第一个参数代表数据源名,第二个参数代表用户名,第三个参数代表密码
        DatabaseMetaData metadata = con.getMetaData();
        ResultSet rs1 = metadata
                .getColumns(null, null, tableName, null);//表的字段信息以行列的形式存储在ResultSet对象中,注:第一个参数代表数据库名,第二个代表数据库扩展名,第三个代表表名,最后一个代表字段名
        int 字段个数 = 0;
        result.append("");
        while (rs1.next()) {//rs1对象调用next方法使游标向下移动一行
            字段个数++;
            String clumnName = rs1.getString(4);//rs1调用getString方法查看该行中列的信息,其中最重要的信息是第4列,该列上的信息为字段的名字
            result.append("");
        }
        result.append("");
        sql = con.createStatement();
        ResultSet rs = sql.executeQuery("select * from " + tableName);//将查询结果返回给内存的结果集对象rs
        while (rs.next()) {
            result.append("");
            for (int k = 1; k <= 字段个数; k++) {
                result.append("");
            }
            result.append("");
        }
        result.append("
" + clumnName + "
" + rs.getString(k) + "
");
        con.close();//关闭数据库连接
    } catch (Exception e) {//抛出异常
        out.print(e);
    }
    jspContext.setAttribute("queryResult", new String(result));//返回queryResult对象给a.jsp页面
    jspContext.setAttribute("biao", tableName);//返回biao对象给a.jsp页面
%>

你可能感兴趣的:(java)