过滤敏感词java代码的简单介绍

java如何快速过滤掉某个字符串包含的最长的一个词

java快速过滤掉某个字符串包含的最长的一个词方法:把敏感词的第一个字符取出来,作为比较对象。遍历整个字符串,如果发现字符跟敏感词第一个字符相同,就从字符串取出跟关键词相同长度的子串比较,如果相同就替换。本算法比较适合敏感词都不长的场合。Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

我们提供的服务有:成都网站设计、成都网站建设、微信公众号开发、网站优化、网站认证、四子王ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的四子王网站制作公司

java过滤非法字符的filter

filter代码在pujia12345提供的代码上改的;

jsp页面的编码你设成你自己的,我用的是utf-8。

input.jsp输入后,正常跳转到handle.jsp,而禁词已经被过滤。

filter:

package test;

import java.io.*;

import javax.servlet.*;

import java.util.*;

public class MyFilter implements Filter

{

private ListString unString;

public void init(FilterConfig filterConfig) throws ServletException

{

unString = new ArrayListString();

unString.add("日");

}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

throws IOException, ServletException

{

String content = request.getParameter("content");//需要过滤的参数

if(content!=null){

for (int i = 0; i unString.size(); i++)

{

String strIllegal = unString.get(i);

if (content.indexOf(strIllegal) = 0)

{

content = content.replaceAll(strIllegal, "");//非法字符替换成空

}

request.setAttribute("content", content);//为request设置属性保存修改后的值

}

}

chain.doFilter(request, response);

}

public void destroy()

{

//System.out.println("过滤器销毁");

}

}

//---------------------------//

web.xml:

filter

filter-namemyfilter/filter-name

filter-classtest.MyFilter/filter-class

/filter

filter-mapping

filter-namemyfilter/filter-name

url-pattern/*/url-pattern

/filter-mapping

//---------------------------//

输入页面input.jsp:

%@page contentType="text/html;charset=utf-8"%

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

titleinput.jsp/title

/head

body

form action="handle.jsp" method="post"

input type="text" name="content" /

input type="submit" value=" 提交 " /

/form

/body

/html

//---------------------------//

input提交的页面handle.jsp:

%@page contentType="text/html;charset=utf-8"%

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

title handle.jsp /title

/head

body

%

String content = (String)request.getAttribute("content");

out.println(content);

%

/body

/html

filter的使用 java 过滤器的几种使用方法

过滤器

过滤器是处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器对请求进行修改、判断等,把不符合规则的请求在中途拦截或修改。也可以对响应进行过滤,拦截或修改响应。

如图,浏览器发出的请求先递交给第一个filter进行过滤,符合规则则放行,递交给filter链中的下一个过滤器进行过滤。过滤器在链中的顺序与它在web.xml中配置的顺序有关,配置在前的则位于链的前端。当请求通过了链中所有过滤器后就可以访问资源文件了,如果不能通过,则可能在中间某个过滤器中被处理掉。

在doFilter()方法中,chain.doFilter()前的一般是对request执行的过滤操作,chain.doFilter后面的代码一般是对response执行的操作。过滤链代码的执行顺序如下:

过滤器一般用于登录权限验证、资源访问权限控制、敏感词汇过滤、字符编码转换等等操作,便于代码重用,不必每个servlet中还要进行相应的操作。


名称栏目:过滤敏感词java代码的简单介绍
标题路径:http://ybzwz.com/article/doisjij.html