mysql转义

来源:互联网 发布:java jackson maven 编辑:程序博客网 时间:2024/05/29 10:01
public class MYSQLEncoder {
private static Map<String, String> referencesMap = new HashMap<String, String>();


static {
referencesMap.put("_", "\\_");
referencesMap.put("'", "\\'");
referencesMap.put("%", "\\%");
referencesMap.put("\"", "\\\"");
referencesMap.put("\\", "\\\\");


referencesMap.put("\n", "\\\n");
referencesMap.put("\0", "\\\0");
referencesMap.put("\b", "\\\b");
referencesMap.put("\r", "\\\r");
referencesMap.put("\t", "\\\t");
referencesMap.put("\f", "\\\f");
}


// escape sql tag with the source code.
public static String encode(String source) {
if (StringUtils.isBlank(source))
return "";


StringBuffer sbuffer = new StringBuffer(source.length());


for (int i = 0; i < source.length(); i++) {
String c = source.substring(i, i + 1);


if (referencesMap.get(c) != null) {
sbuffer.append(referencesMap.get(c));
} else {
sbuffer.append(c);
}
}
return sbuffer.toString();
}
}
0 0
原创粉丝点击