带参数查询网页(JDBC-ODBC桥数据访问)

来源:互联网 发布:上海浦发硅谷银行 知乎 编辑:程序博客网 时间:2024/05/16 10:38

说明:此例是采用JDBC-ODBC桥方式访问SQL SERVER2000数据库的,所以在开始JSP时先创建ODBC数据源。其中数据库名为student,表为stuScore,数据源名称为stuDataBase.

 

index.jsp

 

"<%@page contentType="text/html;charset=gb2312" %>"

<html>

<title>成绩查询</title>

<body>

<font size=4>

<form action="name.jsp" Method="post">

<p>请输入要查询的学生姓名:

<input type=text name="name">

<input type=submit name="submit" value="查询">

</form>

</font>

</body>

</html> 

 

name.jsp

 

"<%@page contentType="text/html:charset=gb2312" import="java.sql>*" %>"

<html>

<title>查询结果</title>

<body>

<%

String name=request.getParameter("name");//得到要查询的姓名。

if(name==null)

{//如果没有什么,则让name为空。

name="";

}

byte b[]=name.getBytes("ISO-8859-1");//如果有姓名被传过来,则进行汉字处理。。。

name=new String(b);

//声明对象。

Connection con=null;//声明Connection连接对象。

Statement sql=null;//声明Statement对象。

ResultSet rs=null;//声明结果集ResultSet对象。

 

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

con=DriverManager.getConnection("jdbc:odbc:stuDataBase","sa","");//建立Connectio连接对象。

sql=con.createStatement();//建立Statement对象。

String condition="select * from stuScore where 姓名=+"'"+name+"'"";//要执行的SQL语句。

rs=sql.executeQuery(condition);//执行sql查询语句得到结果集。

 

//输出结果。

out.print("<TABLE border>");

out.print("<tr>");

out.print("<th width=100>"+"学号");

out.print("<th width=100>"+"姓名");

out.print("<th width=50>"+"数学成绩");

out.print("<th width=50>"+"语文成绩");

out.print("<th width=50>"+"英语成绩");

out.print("</tr>");

while(rs.next())

{//用next()方法找到相应数据输出。

out.print("<tr>");

out.print("<td>"+rs.getString(1)+"</td>");

out.print("<td>"+rs.getString(2)+"</td>");

out.print("<td>"+rs.getInt(3)+"</td>");

out.print("<td>"+rs.getInt(4)+"</td>");

out.print("<td>"+rs.getInt(5)+"</td>");

out.print("</tr>");

out.print("</table>");

//关闭

rs.close();

sql.close();

con.close();

}

%>

</body>

</html>