sql过滤类

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**sql检查类*/
public class ReplaceString {
private static final String regEx = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?\"]";
private static final String inj_str = "'@/@=@and@exec@insert@select@delete@update@count@*@%@chr@mid@master@truncate@char@declare@;@or@lock table@grant@drop@ascii@-@+@,";

private static String dealNull(String str) {
String returnstr = null;
if (str == null)
returnstr = "";
else
returnstr = str;
return returnstr;
}

private static String strReplace(String str, String restr) {
return str.replace(restr, "");
}

/**
*
*
* @info:过滤特殊字符
* @add by luzy
* @Version:
* @Date:Sep 4, 2010
*
*/
public static String stringFunion(String str) {
Pattern p = Pattern.compile(regEx);
str = dealNull(str);
if ("".equals(str)) {
return "";
}
Matcher m = p.matcher(str);
return m.replaceAll("").trim();
}

public static String sqlInfusion(String str) {
String tempstr;
boolean r = true;
String inj_stra[] = inj_str.split("@");
tempstr = dealNull(str);
tempstr = tempstr.toLowerCase();
for (int i = 0; i < inj_stra.length; i++) {
if (tempstr.indexOf(inj_stra[i]) >= 0) {
r = false;
tempstr = strReplace(tempstr, inj_stra[i]);
}
}
if (r) {
return str;
} else {
return tempstr;
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值