当前位置:编程学习 > JAVA >>

为什么总是查不出来数据,说是有空指针错误??急!!!!!

代码如下:



<%@page contentType="text/html;charset=gb2312"%>           
<%@page import="java.sql.*"%>
<%request.setCharacterEncoding("gb2312");%>
<jsp:useBean id="db" class="kc.Condb" scope="page"/>
<form method="post" action=""><center>
请输入你要查询的学生姓名:<input type="text" name=xm size=20>
<input type="submit" name="bt1" value="查找">
</center>
</form>
<%
ResultSet rs;
String xm=request.getParameter("xm");
if(xm!=null)
{
rs=db.search(xm);
out.println("<table border=2 align=center width=75% >");
out.println("<tr align=center>");
out.println("<td>学号</td>");
out.println("<td>姓名</td>");
out.println("<td>年龄</td>");

out.println("</tr>");
while(rs.next())
{
out.println("<tr align=center>");
out.println("<td>"+rs.getString(1)+"</td>");
out.println("<td>"+rs.getString(2)+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("</tr>");
}
out.println("</table>");
}
db.close();
%>
****************************************************************************************
package kc;
import java.sql.*;
public class Condb {
 Connection con=null;
 Statement stmt=null;
 ResultSet  rs=null;
public Condb(){
try{
String url="jdbc:sqlserver://localhost:1433; DatabaseName=db";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();con=DriverManager.getConnection(url,"sa","sa");
stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}catch(Exception e){e.printStackTrace();}
}
public ResultSet search(String xm){
try{
rs=stmt.executeQuery("select * from stuinfo where 姓名='"+xm+"'");
}catch(Exception e){e.printStackTrace();}
    return rs;   
}
public void close(){
try{
rs.close();
stmt.close();
con.close();
}catch(Exception e){e.printStackTrace();}
}
}




--------------------编程问答-------------------- String xm=request.getParameter("xm");
改成
String xm="";
if(request.getParameter("xm")!=null){
xm=request.getParameter("xm");
}
--------------------编程问答-------------------- 应该就是xm首先没有值所致。首先给xm赋个初值吧。 --------------------编程问答-------------------- 应该就是xm首先没有值所致。首先给xm赋个初值吧。 --------------------编程问答-------------------- 好的,谢谢,我试试。 --------------------编程问答--------------------
引用 1 楼 wang7535067 的回复:
String xm=request.getParameter("xm");
改成
String xm="";
if(request.getParameter("xm")!=null){
xm=request.getParameter("xm");
}


+1 --------------------编程问答--------------------
引用楼主 xuhonggang520 的回复:
代码如下:



<%@page contentType="text/html;charset=gb2312"%>           
<%@page import="java.sql.*"%>
<%request.setCharacterEncoding("gb2312");%>
<jsp:useBean id="db" class="kc.Condb" scope="page"……

....................
补充:Java ,  Eclipse
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,