StringEscapeUtils的用法,进行转义和反转义

本文演示了如何使用StringEscapeUtils工具类进行SQL注入防御、HTML与XML内容的转义及反转义操作。通过具体代码示例展示了如何在Java中有效避免SQL注入攻击,并正确处理特殊字符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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>chen磊  xing</font>"));    //转义HTML,注意汉字 
    System.out.println("反转义HTML:"+StringEscapeUtils.unescapeHtml("<font>chen磊  xing</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 
}

备注:需要引入common-langjar包

执行结果:

防SQL注入:1'' or ''1''=''1
转义HTML,注意汉字:&lt;font&gt;chen&#30922;  xing&lt;/font&gt;
反转义HTML:<font>chen磊  xing</font>
转成Unicode编码:\u9648\u78CA\u5174
转义XML:&lt;name&gt;&#38472;&#30922;&#20852;&lt;/name&gt;
反转义XML:<name>陈磊兴</name>

转载于:https://my.oschina.net/liujiawan/blog/410434

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值