怎么在JAVA中实现关键字过滤?

fengshiyan1943 2010-06-18 10:34:21
比如在文本框输入政府 就会过滤掉.
不知道在过滤器中如何拦截到所有的文本输入框!
...全文
1830 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
scjingying 2011-05-24
  • 打赏
  • 举报
回复
我做的就是在数据库建张表,然后写java代码过滤,还有用js可以,我试过,可以的,自己写js
hunya_881012 2011-04-30
  • 打赏
  • 举报
回复
类似代理服务器那样模式的过滤可以吧。
hunya_881012 2011-04-30
  • 打赏
  • 举报
回复
这个方法用在myeclipse里也可以么。
ggbbyy6699 2010-09-17
  • 打赏
  • 举报
回复
6楼的可以,就是过滤规则定义起来太麻烦
水中影子 2010-06-20
  • 打赏
  • 举报
回复
如果过滤的条件很少,可以使用集合

如果过滤条件很多,最好后台建立一张过滤表
niuhea 2010-06-20
  • 打赏
  • 举报
回复
用Filter类可以吧。
blliy117 2010-06-19
  • 打赏
  • 举报
回复
一般来说这个是在后台过滤的,这个得有过滤字库,

替换这种技术和语言没有关系,和算法有关。

一般情况下是在后台好,前台做也行,只是后台过滤要安全一些!
deeplee_ 2010-06-19
  • 打赏
  • 举报
回复
将需要过滤的脏字放在一个文件里面,然后写一个java类,读取,匹配,替换脏字,当然前台也需要做一些处理,js首次过滤,如:他1妈%的*,先将特殊字符屏蔽,然后将js处理之后的字符交给前面说的java类进行处理。当然有更好的模式:
不用java类,连脏字的过滤功能都交给js来处理,这个比较难,目前本人还没实现,如有js高手能处理的,分享下,先行谢过!!!
fier325 2010-06-18
  • 打赏
  • 举报
回复
我目前接触项目也有类似情况,一般敏感词单独存在于数据库表中,通过后台添加,然后在前台过滤时可以调用并进行判断已处理...
fier325 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 zw61911169 的回复:]
6楼的想法不错。。。。
[/Quote]
6楼方法可以用于后台过滤,
而且也可以在前台过滤,用ajax也可以,不过用jquery中的异步提交技术也可以进行处理,方法挺多的,不过我个人认为一般都是在后台进行过滤的,前台过滤一般不稳定...
jebe7282 2010-06-18
  • 打赏
  • 举报
回复
replace("政府","***")
少F 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lazy_p 的回复:]

帮顶,你可以设计一个关键字过滤数据库表啊,把你要过滤掉的内容放入表中,然后你在后台查看输入的内容里面是否有需要过滤掉的文字,然后你替换掉那些文字就可以了啊,呵呵!
[/Quote]

正解
xiejjava_hb 2010-06-18
  • 打赏
  • 举报
回复
可以自己写个过滤器来进行相关字符的过率,前提条件是要把需要过滤的字符放到一起
ronniegxq 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 amos1989 的回复:]

引用 6 楼 lazy_p 的回复:
帮顶,你可以设计一个关键字过滤数据库表啊,把你要过滤掉的内容放入表中,然后你在后台查看输入的内容里面是否有需要过滤掉的文字,然后你替换掉那些文字就可以了啊,呵呵!

++

我们做的时候也是这样的. 会设计一张表..把关键词添加进去,当然在系统管理中会有添加过滤词的功能.

然后就比较多办法啦: 第一,对读取的内容直接进行inde……
[/Quote]
amos1989 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lazy_p 的回复:]
帮顶,你可以设计一个关键字过滤数据库表啊,把你要过滤掉的内容放入表中,然后你在后台查看输入的内容里面是否有需要过滤掉的文字,然后你替换掉那些文字就可以了啊,呵呵!
[/Quote]
++

我们做的时候也是这样的. 会设计一张表..把关键词添加进去,当然在系统管理中会有添加过滤词的功能.

然后就比较多办法啦: 第一,对读取的内容直接进行indexOf()判断
第二:过滤器进行判断.
第三:AOP.
快乐的2 2010-06-18
  • 打赏
  • 举报
回复
把需要过滤的东西放到一个文件里或者像6楼里说的数据库中,然后读取出为Static变量,最后可以定义个工具类(CharFilterUitl.java)
private static String[] dict;
public static String filter(String word){
String str = word;
for(int i = 0; i < dict.length; i++){
str = str.replaceAll(word,"");
}
return str;
}

或者直接在Tomcat服务器上设置过滤器Filter,让Filter把关键字过滤掉。
zw61911169 2010-06-18
  • 打赏
  • 举报
回复
6楼的想法不错。。。。
rorom 2010-06-18
  • 打赏
  • 举报
回复
这个需要用ajax.
或者不用ajax,则需要把屏蔽的内容放在js里,这样也可以,建议用数组存储.
宅男小何 2010-06-18
  • 打赏
  • 举报
回复
帮顶,你可以设计一个关键字过滤数据库表啊,把你要过滤掉的内容放入表中,然后你在后台查看输入的内容里面是否有需要过滤掉的文字,然后你替换掉那些文字就可以了啊,呵呵!
dr_lou 2010-06-18
  • 打赏
  • 举报
回复
前台的得问问js高手了。
加载更多回复(5)

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧