标题:servlet查询数据库问题
只看楼主
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
 问题点数:0 回复次数:8 
servlet查询数据库问题

我有一个JSP页面中有7个FORM (里面有学号 姓名 年龄等) 想不管输入哪个都可以从数据库中查询
但是Servlet编译成功 可是JSP页面运行时显示
description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.NullPointerException
people.query.doPost(query.java:51)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

请问这是什么问题啊?是不是SQL语句写的不对???

package people;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class query extends HttpServlet{
private static final String CONTENT_TYPE="text/html;charset=GB2312";

public void init() throws ServletException{
super.init();}

//执行HTTP POST请求
public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{
PrintWriter out=response.getWriter();
response.setContentType(CONTENT_TYPE);
out.print("<html>");
out.print("<body>");

//获得客户端用post方法传来的数据
String number=request.getParameter("number");
System.out.println(number);
String name=request.getParameter("name");
System.out.println(name);
String sex=request.getParameter("sex");
System.out.println(sex);
String nianlin=request.getParameter("nianlin");
System.out.println(nianlin);
String jiguan=request.getParameter("jiguan");
System.out.println(jiguan);
String yuanxi=request.getParameter("yuanxi");
System.out.println(yuanxi);

Connection conn=null;
Statement stmt=null;
ResultSet rs=null;


try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");}
catch(ClassNotFoundException e){e.printStackTrace();}

try{
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=university","sa","");
String sql="select * from student where number like "+"'"+number+"'";
rs=stmt.executeQuery(sql);
out.print("<table border>");
out.print("<tr>");
out.print("<th width=100>"+"学号");
out.print("<th width=100>"+"姓名");
out.print("<th width=30>"+"性别");
out.print("<th width=50>"+"年龄");
out.print("<th width=100>"+"籍贯");
out.print("<th width=100>"+"院系");
out.print("</tr>");

//循环显示结果
while(rs.next())
{
out.print("<tr>");
number=rs.getString(1);
out.print("<td>"+number+"</td>");

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

sex=rs.getString(3);
out.print("<td>"+sex+"</td>");

nianlin=rs.getString(4);
out.print("<td>"+nianlin+"</td>");

jiguan=rs.getString(5);
out.print("<td>"+jiguan+"</td>");

yuanxi=rs.getString(6);
out.print("<td>"+yuanxi+"</td>");
out.print("</tr>");
}


out.print("</table>");
conn.close();
}catch(SQLException e){}
out.print("</html>");
out.print("</body>");
}


public void destroy(){
}
}

搜索更多相关主题的帖子: servlet 数据库 java HttpServlet service 
2006-10-23 13:11
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
得分:0 
我先去上课  希望回来后就可以解决这个问题了  谢谢各位高手~~~
2006-10-23 13:13
可可℃乐
Rank: 2
等 级:新手上路
威 望:3
帖 子:1054
专家分:0
注 册:2006-5-9
得分:0 
number=rs.getString(1);
这个是不是SQLserver里的哇..
没用过
我弄的都是String number = rs.getString("number");这样写的
你这样试试

[url=http://www.]网页设计教程[/url]
2006-10-23 13:19
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
得分:0 

好 我试试

2006-10-23 15:43
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
得分:0 

我在SQL前面加了stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
Servlet可以运行了 但是里面的表格显示不出来 谁能帮帮我啊 急

2006-10-23 16:20
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
得分:0 
现在运行后显示一行这个
[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]?? 'number' ???

请问是那里出错了呢
2006-10-23 16:56
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
得分:0 

可以运行了 但是显示不了中文 学号和年龄可以查询了 但是有中文都显示 ? 怎么办啊?

2006-10-23 17:34
可可℃乐
Rank: 2
等 级:新手上路
威 望:3
帖 子:1054
专家分:0
注 册:2006-5-9
得分:0 
乱码就那么几点注意的就OK了

[此贴子已经被作者于2006-10-25 10:55:13编辑过]



[url=http://www.]网页设计教程[/url]
2006-10-23 21:49
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
把有utf-8的地方都改成gb2312

win32汇编
病毒 加密
目前兴趣所在
2006-10-24 07:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-98139-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.047460 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved