大家帮我看这段代码 错误在哪?

1007 2006-05-06 05:52:19
package online;
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class LoginCheck extends HttpServlet
{
private Connection conn=null;
private ResultSet rs =null;
private Statement stmt=null;

public void init() throws ServletException
{
try
{
String host = "localhost";
String db = "db2";
String use = "root";
String pass = "password";
String url = "jdbc:mysql://"+host+":3306/"+db+"?user="+use+"&password="+pass+"&useUnicode=true&characterEncoding=gb2312" ;
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
conn=DriverManager.getConnection(url);
}
catch(Exception e)
{
System.out.println("error:"+e.getMessage());
}

}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
PrintWriter out = response.getWriter();
String userid = request.getParameter("id");
String userpwd = request.getParameter("password");
try
{
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from member where id='"+userid+"'");
if(rs.next()){
String pwd=rs.getString("passwd").trim();
if(!pwd.equals(userpwd)){
out.println("<script>alert('密码错误');document.location='javascript:history.go(-1);'</script>");
}
else{
out.println("<script>alert('登陆成功');document.location='global_login.jsp'</script>");
}
}
else{
out.println("<script>alert('用户名不存在');document.location='javascript:history.go(-1);'</script>");
}
}
catch(SQLException e)
{
out.println(e.getMessage());
}

finally
{
try
{
rs.close();
stmt.close();
conn.close();
}
catch(SQLException e) {
out.println(e.getMessage());
}
}
}
}
-------------------------------错误提示!-----------------------------

java.lang.NullPointerException
at blog.LoginCheck.doPost(LoginCheck.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:286)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:562)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:205)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:562)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:177)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:562)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:562)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:974)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:203)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:637)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:488)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:568)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:631)
at java.lang.Thread.run(Unknown Source)

...全文
211 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
1007 2006-05-07
  • 打赏
  • 举报
回复
我在问大家 上面的 代码中我加了 session.setAttribute("id",userid);
但是 编译器 报了这样的错误提示:
------------------------------------------------------------------------------
LoginCheck.java:58: cannot resolve symbol
symbol : variable session
location: class online.LoginCheck
session.setAttribute("id",userid);

-----------------------------------------------------------------------------

'登陆成功'的上面加了 那个代码
1007 2006-05-07
  • 打赏
  • 举报
回复
qinqinxiatiao(亲亲虾条)=> 谢谢你 我知道错在那里了!哈哈哈哈 真是糊涂了
realdreamer 2006-05-07
  • 打赏
  • 举报
回复
空指针
jshi123 2006-05-07
  • 打赏
  • 举报
回复
现在还是老问题吗?

如果是老问题还请先检查输出路径(web-inf/classes/bean/)下面有无DataDo.class

很抱歉,我不是一直在网上的,基本上是干活休息的时候上网看一看,对我了解的问题给一些提示。论坛就是这个作用,也许你应该寻找其它形式的帮助。
1007 2006-05-07
  • 打赏
  • 举报
回复
你好!谢谢你这么多次 帮我 解答 问题! 能给我 你的联系的方式啊?(如:qq,msn)
这样问太麻烦了!直接跟你问的话 快一些! 可以吗?
1007 2006-05-07
  • 打赏
  • 举报
回复
不好意思!我写错了!这几天我的头都大了!是LoginCheck.java 的编译错误!
jshi123 2006-05-07
  • 打赏
  • 举报
回复
你给的错误提示:
LoginCheck.java:3: package bean does not exist

说明是在编译LoginCheck.java 第3行的时候出现错误。不是吗?

我也很迷惑啊?!
jshi123 2006-05-07
  • 打赏
  • 举报
回复
确实奇怪。

1. DataDO.java 是否编译过了?检查输出路径(web-inf/classes/bean/)下面有无DataDo.class
2. 不行的话,从简单的做起: 把 DataDo.java 拷贝到你的 servlet 目录下(应该是online吧),把DataDo.java中的package改成online, 这样在servlet中就不要引用了,可以去掉import xx.DataDo;
1007 2006-05-07
  • 打赏
  • 举报
回复
我在 servlet 里加了 import bean.DataDo; // bean 文件夹下的 DataDo.java
但出现了错误提示!

LoginCheck.java:3: package bean does not exist
import bean.DataDo;

这是什么意思呢?
jshi123 2006-05-07
  • 打赏
  • 举报
回复
JavaBean也是普通的Java类啊,只是遵守一些JavaBean的编写规则,并没有特殊性,可以就像调用普通的类那样:

import yourpackage.YourJavaBean;

// in servlet method:

YourJavaBean bean = new YourJavaBean();
data = bean.getData(); // your bean's method

答案似乎太简单了,可能没有弄懂你的问题?
1007 2006-05-07
  • 打赏
  • 举报
回复
我忘告诉你了 我在编译 DataDo.java 的时候 编译器报了 上面的错误提示!
1007 2006-05-07
  • 打赏
  • 举报
回复
在帮我一个问题好吗?
我想在 servlet 中访问 javabean 里的数据!怎么做好呢?

如:
javabean 里写 用 jdbc 连接 数据库的代码!
在 servlet 里写sql 程序 但是先 import javabean的 数据!
1007 2006-05-07
  • 打赏
  • 举报
回复
jshi123()==> 谢谢你 ok拉!哈哈

真的感谢 2位 分一定给!
jshi123 2006-05-07
  • 打赏
  • 举报
回复
加上变量申明:
HttpSession session = request.getSession();
qinqinxiatiao 2006-05-06
  • 打赏
  • 举报
回复
String url = "jdbc:mysql://"+host+":3306/"+db+"?user="+use+"&password="+pass+"&useUnicode=true&characterEncoding=gb2312" ;

看到这个无语了~~~

道声: 楼主辛苦啦!
jshi123 2006-05-06
  • 打赏
  • 举报
回复
因为贴出的代码没有行号,好像还是没有跟你的原代码对上(我这里看到70行是空语句)
直接告诉我出错行的代码吧。
1007 2006-05-06
  • 打赏
  • 举报
回复
是 online/LoginCheck.java 第70行出错
jshi123 2006-05-06
  • 打赏
  • 举报
回复
blog/LoginCheck.java 第76行是什么语句?
你贴出的代码只有74行,并且package为online, 似乎与运行时提示的blog.LoginCheck不一致
qinqinxiatiao 2006-05-06
  • 打赏
  • 举报
回复
空指针错误指的是你的变量值为空,而去用它调用其方法,就会产生变量没有相应的类实例来执行你所调用的方法,从而抛出异常

楼主最好一步一步检查 手动的可以加入System.out.print()来调试信息
也可以使用log4j来弄

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧