转义通常用在需要写入数据库的时候,经过转义可以避免很多潜在的问题,使系统更健壮。但是Java并没有自带相关类库。通常我们使用Apache开源的common-lang类库。
Apache common lang最新版下载地址:点击下载
- import org.apache.commons.lang.StringEscapeUtils;
-
- public class StringEscapeUtilsTest {
-
- public static void main(String args[]){
-
- String sql="1' or '1'='1";
- System.out.println("防SQL注入:"+StringEscapeUtils.escapeSql(sql));
-
- System.out.println("转义HTML,注意汉字:"+StringEscapeUtils.escapeHtml3("<font>chen磊 xing</font>"));
- System.out.println("反转义HTML:"+StringEscapeUtils.unescapeHtml3("<font>chen磊 xing</font>"));
-
- System.out.println("转成Unicode编码:"+StringEscapeUtils.escapeJava("张三"));
-
- System.out.println("转义XML:"+StringEscapeUtils.escapeXml("<name>张三</name>"));
- System.out.println("反转义XML:"+StringEscapeUtils.unescapeXml("<name>张三</name>"));
-
- }
- }