JavaWeb——允许授权的IP访问站点过滤器
来源:互联网 发布:信鸽营销软件 编辑:程序博客网 时间:2024/06/05 20:59
1、创建一个过滤器操作类。
2、修改web.xml文件,在web.xml文件中配置过滤器的内容
3、创建相应的Jsp页面。
创建过滤器类
package com.caokaiyuan.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class IPFilter implements Filter
{
private FilterConfig config;
@Override
public void destroy()
{
}
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException
{
HttpServletRequest request = (HttpServletRequest)arg0;
HttpServletResponse response = (HttpServletResponse)arg1;
//获得不过滤的IP段
String noFilterIp = config.getInitParameter("FilteredIP");
//获得客户端IP地址
String ipAddress = request.getRemoteAddr();
//截取前面部分IP字段
String ip = ipAddress.substring(0, 7);
//获取不过滤的Jsp页面
String noFilterJsp = config.getInitParameter("noFilteredJsp");
//包含不过滤的Jsp页面,通过过滤器
if (request.getRequestURI().indexOf(noFilterJsp) != -1)
{
arg2.doFilter(request, response);
return ;
}
//判断是否为可以通过的IP段
if (ip.equals(noFilterIp))
{
arg2.doFilter(request, response);
}
else
{
response.sendRedirect("error.jsp");
}
}
@Override
public void init(FilterConfig arg0) throws ServletException
{
config = arg0;
}
}
修改web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 配置过滤器 -->
<filter>
<filter-name>FilterIP</filter-name>
<filter-class>com.caokaiyuan.filter.IPFilter</filter-class>
<!-- 配置初始化参数 -->
<init-param>
<!-- 配置允许通过的IP -->
<param-name>FilteredIP</param-name>
<param-value>219.218</param-value>
</init-param>
<init-param>
<!-- 配置不过滤的jsp页面 -->
<param-name>noFilteredJsp</param-name>
<param-value>error.jsp</param-value>
</init-param>
</filter>
<!-- 配置映射 -->
<filter-mapping>
<filter-name>FilterIP</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
创建相关Jsp页面
success.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
欢迎登陆!!
<br>
</body>
</html>
error.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
对不起,您的IP不能访问本站点!!
<br>
</body>
</html>
- JavaWeb——允许授权的IP访问站点过滤器
- Servlet过滤器——禁止未授权的IP访问站点
- 过滤器-禁止未授权的IP访问站点
- 过滤器的应用——统计IP访问次数
- JavaWeb---过滤器的使用--禁止IP登陆
- JavaWeb——过滤器的原理
- Oracle 设定允许访问的IP地址
- apache 站点 只允许某IP 或是某IP段访问
- wampserver搭建站点 允许外网访问的设置方法
- 配置mysql指定的ip授权访问
- JavaWeb——Filter过滤器
- mysql授权ip访问
- 允许指定IP访问远程桌面
- mysql允许远程IP访问
- iptables允许某个ip访问
- mysql允许外部IP访问
- windows2003允许指定IP访问
- 允许一系列IP地址访问
- [Java学习笔记]JavaSE,JavaEE和JavaME的区别
- 并发初探-更新中
- Redis安装_Window+Linux
- 多叉树的递归和非递归遍历
- 随机生成10个数(使用9种循环)
- JavaWeb——允许授权的IP访问站点过滤器
- WCF学习分享2
- inflater.inflate(R.layout.main_tab_01, null)与inflater.inflate(R.layout.main_tab_01, container, false
- Node.js垂直水平扩展与消息集成方案
- 正则表达式常用规则
- C++总结
- html frameset边框问题 去掉横条
- struts2中使用属性驱动的形式上传文件
- 完美的实现九宫格锁屏