zoukankan      html  css  js  c++  java
  • java中利用StringEscapeUtils对字符串进行各种转义与反转义

              在java中可以利用StringEscapeUtils能很方便的进行html,xml,java等的转义与反转义,而且还能对关键字符串进行处理预防SQL注入;使用它需要导入apache工具包common-lang.jar;

         我的使用场景:在保存数据是为了防止SQL注入对存入的数据进行了转义,在读取数据是就需要反转义。(我存入的是html文件);

      

    使用:

    import org.apache.commons.lang.StringEscapeUtils;

    public class Test {
        
        public static void main(String[] args) {
            
            String sql="1' or '1'='1";
            System.out.println("防SQL注入:"+StringEscapeUtils.escapeSql(sql));    //防SQL注入
            
            System.out.println("转义HTML,注意汉字:"+StringEscapeUtils.escapeHtml("<font>xiao 明 </font>"));     //转义HTML,注意汉字
            System.out.println("反转义HTML:"+StringEscapeUtils.unescapeHtml("<font>xiao 明</font>"));    //反转义HTML
            
            System.out.println("转成Unicode编码:"+StringEscapeUtils.escapeJava("吴建明"));     //转义成Unicode编码
            
            System.out.println("转义XML:"+StringEscapeUtils.escapeXml("<name>吴建明</name>"));     //转义xml
            System.out.println("反转义XML:"+StringEscapeUtils.unescapeXml("<name>吴建明</name>"));     //转义xml
            
        }
    }

    输出结果:

  • 相关阅读:
    Redis系列--3.redis配置
    Redis系列--2.redis安装
    Redis系列--1.redis概述
    Redis系列--4.常用命令汇总
    Redis系列之(六)——集群redis cluster
    Redis系列之(五)——哨兵
    Redis系列之(四)——深入reids优化
    Redis系列之(三)——持久化与复制
    Redis系列之(一)——开发基础
    Python执行系统命令的方法
  • 原文地址:https://www.cnblogs.com/binkai/p/9566539.html
Copyright © 2011-2022 走看看