用户注册——关键字过滤
来源:互联网 发布:还珠格格小燕子知乎 编辑:程序博客网 时间:2024/06/06 14:24
在编写用户注册模块时,我们常常需要过滤一部分敏感词汇作为用户名。可以通过filter来实现这一功能,一下为具体实现的方法:
1、编写filter过滤关键字
public class NameCheck extends HttpServlet implements Filter{private String[] keywords;@Overridepublic void doFilter(ServletRequest arg0, ServletResponse arg1,FilterChain arg2) throws IOException, ServletException {// TODO Auto-generated method stub//接受用户名String name=arg0.getParameter("userName");//判断的时候如果变量为空,会报空指针异常 if(name!=null){for(String key:keywords){if(key.equals(name)){arg0.setAttribute("err", "被过滤器拦截<font color='red'>"+name+"</font>是关键字");arg0.getRequestDispatcher("/WEB-INF/name_err.jsp").forward(arg0, arg1);return ;}}}arg2.doFilter(arg0, arg1);}@Overridepublic void init(FilterConfig arg0) throws ServletException {// TODO Auto-generated method stubkeywords=arg0.getInitParameter("keywords").split(";");}}
接收到用户注册的用户名,并判断用户名是否为关键字,如果为关键字,则返回注册界面,重新注册。
2、在web.xml中配置filter,并设置关键字
<filter> <filter-name>NameCheck</filter-name> <filter-class>com.sevend.filter.NameCheck</filter-class> <!-- 在这里配置属性,实现多个字符的过滤 --> <init-param> <param-name>keywords</param-name> <param-value>拉登;管理员;领导人;法轮功</param-value> </init-param> </filter>
<filter-mapping> <filter-name>NameCheck</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
配置完成web.xml就可以实现敏感词汇的过滤,从代码中可以看出,敏感词汇被配置在web.xml文件的初始值中。
- 用户注册——关键字过滤
- 模式2——用户注册
- JavaMai——邮箱验证用户注册
- JavaMai——邮箱验证用户注册
- JavaMail——邮箱验证用户注册
- JavaMai——邮箱验证用户注册
- 关键字过滤
- 关键字过滤
- 关键字过滤
- 关键字过滤
- 关键字过滤 脏话过滤
- 协同过滤——基于用户的推荐算法
- 推荐算法——基于用户的协同过滤算法
- 基于用户的协同过滤推荐—实现电影推荐
- 过滤关键字大全-网页关键字过滤-sql注入关键字过滤
- 过滤关键字大全-网页关键字过滤-sql注入关键字过滤
- 用户注册案例的实验——国际化
- ET199加密方案——用户注册机制
- HDFS 拷贝本地文件至HDFS时的异常[INFO fs.FSInputChecker: Found checksum error]处理方法
- 【spoj1693】【最小割】Coconuts
- adb 打印终端中内存使用情况的方法
- BigDecimal
- Windows Server 2012启用自动登录方法
- 用户注册——关键字过滤
- BigInteger
- matlab startup.m文件
- 软件工程导论第一次作业
- PLL和DLL:都是锁相环,区别在哪里?
- CentOS 安装mysql
- Collection接口方法
- try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
- Git 的一些基本用法