您的位置:首页 > 数据库 > MySQL

mysql转义

2016-04-07 15:32 423 查看
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();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: