java web限制登录ip_java web限制访问的ip地址.doc

41528d3028836879cd698677c3999917.gifjava web限制访问的ip地址.doc

java服务器端的例子类:importjava.io.IOException;importjava.util.Date;importjavax.servlet.Filter;importjavax.servlet.FilterChain;importjavax.servlet.FilterConfig;importjavax.servlet.ServletException;importjavax.servlet.ServletRequest;importjavax.servlet.ServletResponse;importjavax.servlet.http.HttpServletRequest;mons.logging.Log;mons.logging.LogFactory;importorg.springframework.web.context.WebApplicationContext;importorg.springframework.web.context.support.WebApplicationContextUtils;publicclassIpFilterimplementsFilter{privatefinalLoglogger=LogFactory.getLog(this.getClass());privatestaticStringforward=null;privateStringipString=null;privateICheckAdminLoginCheckAdminLoginService=null;//privateICheckAdminLoginCheckAdminLoginService=newCheckAdminLogin();privateFilterConfigfilterConfig=null;/***Filterinit*/publicvoidinit(FilterConfigfilterConfig){this.filterConfig=filterConfig;//ipString=filterConfig.getInitParameter(“allowIp“);//System.out.println(“1、获取初始化IP:“+ipString);this.forward=filterConfig.getInitParameter(“forward“);}publicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsServletException,IOException{WebApplicationContextwac=WebApplicationContextUtils.getWebApplicationContext(filterConfig.getServletContext());this.CheckAdminLoginService=(ICheckAdminLogin)wac.getBean(“checkAdminDAO“);//StringipAddr=getIpAddr((HttpServletRequest)request);//StringipAddrTrim=Tools.checkNull(ipAddr);//System.out.println(“2、获取当前登录人员IP:“+ipAddr);//System.out.println(“1、获取IP:“+ipString);//inti=ipAddrTrim.lastIndexOf(“.“);//intr=ipString.lastIndexOf(“.“);//StringrelPscope=ipString.substring(0,r);//过滤lP段//intintRtn=CheckAdminLoginService.checkAdminLoginIp(ipAddr);//System.out.println(“判断之后返回的结果:“+intRtn);//if(relPscope.equals(ipAddrTrim.substring(0,i))){//request.setAttribute(“error“,“禁止访问的IP地址!“);登录错误//request.getRequestDispatcher(forward).forward(request,response);//重定向到adminlogin.jsp页面//return;//}//else{//chain.doFilter(request,response);//}StringipAddr=getIpAddr((HttpServletRequest)request);System.out.println(“2、获取当前登录人员IP:“+ipAddr+“--登录时间:“+newDate());intintRtn=CheckAdminLoginService.checkAdminLoginIp(ipAddr);//System.out.println(“判断之后返回的结果:“+intRtn);if(intRtn==0){//返回0不允许访问request.setAttribute(“error“,“限制访问的IP地址!“);登录错误request.getRequestDispatcher(forward).forward(request,response);//重定向到adminlogin.jsp页面return;}elseif(intRtn==1){//进入后台的登录页面chain.doFilter(request,response);}}/***Filterclean-up*/publicvoiddestroy(){//Notmuchtodo.}/***获取客户端IP地址*/protectedStringgetIpAddr(HttpServletRequestrequest){//Stringip=request.getHeader(“x-forwarded-for“);//if(ip==null||ip.length()==0||“unknown“.equalsIgnoreCase(ip)){//ip=request.getHeader(“Proxy-Client-IP“);//}//if(ip==null||ip.length()==0||“unknown“.equalsIgnoreCase(ip)){//ip=request.getHeader(“WL-Proxy-Client-IP“);//}//if(ip==null||ip.length()==0||“unknown“.equalsIgnoreCase(ip)){//ip=request.getRemoteAddr();//}//returnip;if(request.getHeader(“x-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值