package com.zhao.action;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.zhao.Utils.StringUtils;
public class UserAction extends BaseAction {
public void login(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username=request.getParameter("username");
String password=request.getParameter("password");
String checkcode=request.getParameter("checkcode");
String url=request.getParameter("url");
HttpSession session=request.getSession();
Map errs=new HashMap();
if(StringUtils.isBlank(username))
errs.put("username", "用户名称不能为空!");
if(StringUtils.isBlank(password))
errs.put("password", "密码不能为空!");
if(StringUtils.isBlank(checkcode))
errs.put("checkcode", "验证码不能为空!");
else{
Object obj=session.getAttribute("checkcode");
if(!checkcode.equals(obj)){
errs.put("checkcode", "验证码输入错误");
}
}
if(!errs.isEmpty()){
session.setAttribute("errors",errs);
session.setAttribute("username", username);
//request.getRequestDispatcher("../user/login.jsp").forward(request, response);
response.sendRedirect(url);
return;
}
}
@Override
public void list(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
其中login和List是我创建了一个servlet的父类BaseAction,用反射做出的。
父类:
package com.zhao.action;
import java.io.IOException;
import java.io.PrintWriter;
import java.lang.reflect.Method;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public abstract class BaseAction extends HttpServlet {
private static final long serialVersionUID = -4289158719460028496L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action=request.getParameter("action");
if(action==null||action.trim().length()<1){
action="list";
Class clz=this.getClass();
try {
Method method=clz.getMethod(action, HttpServletRequest.class,HttpServletResponse.class);
method.invoke(this,request,response);
} catch (Exception e) {
new ServletException(e);
}
}
}
public abstract void list(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException;
}
把jsp页面也贴出来
action="user.do?action=login" method=post>
document.getElementById("url").value=location.href;
${ sessionScope.errors.username} | |
用户名: | |
${ sessionScope.errors.password} | |
密码: | |
${ sessionScope.errors.checkcode} | |
验证码: | |
document.getElementById("img1").src='${pageContext.request.contextPath}/images/pic.do?q='+Math.random();
colSpan=2>
停止的页面地址是:
白屏没反应,求解决!!!!!!!!!!!!!