<%@ page contentType="text/html; charset=gb2312" %><%@ page language="java" %><%@ page import="com.mysql.jdbc.Driver" %><%@ page import="java.sql.*" %><%//驱动程序名String driverName="com.mysql.jdbc.Driver";//数据库用户名String userName="root";//密码String userPasswd="123";//数据库名String dbName="stock";//表名String tableName="users";//联结字符串String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;Class.forName("com.mysql.jdbc.Driver").newInstance();Connection conn=DriverManager.getConnection(url);String WhereCondition="age<=30";String OrderByExpress="id Desc";//调用存储过程的方法,并且传递了参数,不传参数就 call GetUsersDynamic可以了CallableStatement cstmt=conn.prepareCall("{call GetUsersDynamic(?,?)}");cstmt.setString(1,WhereCondition);cstmt.setString(2,OrderByExpress);ResultSet rs = cstmt.executeQuery(); //获得数据结果集合ResultSetMetaData rsmd = rs.getMetaData();//确定数据集的列数,亦字段数int numColumns=rsmd.getColumnCount();// 输出每一个列名out.print("<table border=1><tr>");for(int i=1;i<=numColumns;i++)//注意下标从1开始的 { out.print("<td>"+rsmd.getColumnName(i)+"</td>");}out.print("</tr>");while(rs.next()) {out.print("<tr>"); for(int i=1;i<=numColumns;i++) { //输出数据 out.print("<td>"+rs.getString(i)+"</td>"); }out.print("</tr>"); } out.print("</table>");out.print("数据库操作成功,恭喜你"); rs.close(); cstmt.close(); conn.close(); %>