<%@ page contentType="text/html;charset=gb2312" language="java"%>
<%@ page import="java.io.*,java.sql.*"%>
<jsp:useBean id="rst" scope="page" class="com.mingri.dbconn.DBResult"/>
<jsp:useBean id="calendar" scope="page" class="com.mingri.showtime.ShowTime"/>
<%
   /*request.setCharacterEncoding("gb2312");//对请求进行统一编码,能正常接收中文*/
   String username=request.getParameter("username"); //接收表单中的username属性
   String password=request.getParameter("password");//接收表单中的password属性
   String str="select * from tb_user where "+
               "username='"+username+"' and password='"+password+"'";
   ResultSet rs=rst.getResult(str);//执行SQL语句获得结果集对象
   session.setAttribute("isLog",new String("0"));//判断用户是否登录,当isLog的属性为0时,说明用户并没有登录
   if(!rs.next())//结果集没有找到所要查找的行
   {
    out.println("<script language='javascript'>alert('用户名或密码错误');"+
                "parent.location.href='index.jsp';</script>");
   }
   else
   {
     session.setAttribute("username",rs.getString("username"));//保存登录信息到session对象中
     session.setAttribute("password",rs.getString("password"));
     session.setAttribute("isLog",new String("1"));//将isLog属性设置为1
     //获得用户上次登录系统的时间
     session.setAttribute("userLastLogTime",rs.getString("userLastLogTime"));
     String strsql=calendar.getDate();
     int id=rs.getInt("ID");
     //将该用户本次登录系统的时间在用户信息表中更新
     String strUpdate="update tb_user set userLastLogTime='"+strsql+"' where ID="+id+"";
     rst.getResult(strUpdate);//执行SQL语句
     response.sendRedirect("chat.jsp");//登录成功后转到系统主页面
   }
%>说第5句有问题 我看了好像是对的。有谁帮忙解决下

解决方案 »

  1.   

    你这是用的什么数据库
    如果是SQL server  
    String str="select * from tb_user where username='"+username+"' and password='"+password+"'";ResultSet rs=rst.executeQuery(sql);
      

  2.   

    org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at line 52: <%@ page import="java.io.*,java.sql.*"%>
    3: <jsp:useBean id="rst" scope="page" class="com.mingri.dbconn.DBResult"/>
    4: <jsp:useBean id="calendar" scope="page" class="com.mingri.showtime.ShowTime"/>
    5: <%
    6:    /*request.setCharacterEncoding("gb2312");//对请求进行统一编码,能正常接收中文*/
    7:    String username=request.getParameter("username"); //接收表单中的username属性
    8:    String password=request.getParameter("password");//接收表单中的password属性
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    root cause java.lang.NullPointerException
    org.apache.jsp.login_jsp._jspService(login_jsp.java:85)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)抱这个错误
      

  3.   

    我的登录都调了快2天了,总是说action找不到,郁闷
      

  4.   

    username password 
    这两个变量  于前面提交页面的一致不?
      

  5.   

    建议你做一条测试语句:System.out.println(rs==null);
    看输出是true还是false.
      

  6.   

    空指针,是我bean中有问题?
      

  7.   

    ResultSet rs=rst.getResult(str);
    这句你确定能返回一个ResultSet对象吗?要是返回null的话就空指针了。
    最好跟一下。
      

  8.   



    org.apache.jsp.login_jsp._jspService(login_jsp.java:85) 
    login_jsp.java 找你jsp编译为java servlet的程序的第85行哦
    这个文件是 jsp编译后的得来的,应该可以用“搜索”或find命令找到阿。