<%@ 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句有问题 我看了好像是对的。有谁帮忙解决下
如果是SQL server
String str="select * from tb_user where username='"+username+"' and password='"+password+"'";ResultSet rs=rst.executeQuery(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)抱这个错误
这两个变量 于前面提交页面的一致不?
看输出是true还是false.
这句你确定能返回一个ResultSet对象吗?要是返回null的话就空指针了。
最好跟一下。
org.apache.jsp.login_jsp._jspService(login_jsp.java:85)
login_jsp.java 找你jsp编译为java servlet的程序的第85行哦
这个文件是 jsp编译后的得来的,应该可以用“搜索”或find命令找到阿。