StringEscapeUtils.escapeHtml4
作用是将特殊字符
转换为它们对应的HTML实体形式
,从而防止这些字符在网页中被解析为HTML标签
或脚本
,有助于防止跨站脚本攻击(XSS, Cross-Site Scripting)
依赖
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-text</artifactId><version>1.10.0</version></dependency>
样例
< 将被转义为 <span class="token entity named-entity" title="<> 将被转义为 ">>& 将被转义为 &双引号 (") 会被转义为 "单引号 (') 在HTML4中通常不转义,但在严格模式下或者为了兼容XHTML,可能会转义为
String unescaped = "alert('XSS');";String escaped = StringEscapeUtils.escapeHtml4(unescaped);# 结果: <script>alert(XSS);</script>
对于现代Web应用来说,建议使用更全面的安全策略来防止XSS攻击,而不仅仅是依赖于这种简单的转义操作。