1.如何进行登录并进行过滤IP地址
public class LoginAction extends Action {
@Overridepublic ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
LoginActionForm laf=(LoginActionForm)form;
String username=laf.getUsername();
String password=laf.getPassword();
String result="index";
if("admin".equals(username)&&"admin".equals(password)){
String remoteAddress=request.getRemoteAddr();
String alowIps=request.getSession().getServletContext().getInitParameter("alowIps");
String[] ips=alowIps.split(",");
Arrays.sort(ips);
if(Arrays.binarySearch(ips, remoteAddress)>=0){//采用一个工具类来查找你所访问的IP是不是在指定的IP范围内
//登录成功
request.getSession().setAttribute("user", username);
result="login_success";
}
}else{
result="index";
}
return mapping.findForward(result);
}
2.防止Url
public class BaseAction extends DispatchAction {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
if(request.getSession().getAttribute("user")==null){
return mapping.findForward("index");
}
return super.execute(mapping, form, request, response);
}
}
然后我们把要访问的其他Action都继承自这个BaseAction即可.