在spring框架中,我们有类似下面的内容来转义html字符
<context-param>
<param-name>defaultHtmlEscape</param-name>
<param-value>true</param-value>
</context-param>
我还想添加一个自定义类,它也可以转义像
这样的字符!"#$%&*+/:;=?@[]^`{|}~\
在Spring框架中是否有一个类来执行此操作?(我认为,否)如果没有,我可以使用可以转换所有字符的实用程序类。
使用像过滤器这样的实用程序类来对值进行编码(输入验证)
我想知道我是否可以使用相同的过滤器来编码输出?
问题输出仍然显示与输入的值相同,而不是&LT;
的{{1}}编码。非常感谢任何建议!
答案 0 :(得分:4)
也许您可以使用Apache commons。它有逃脱和unescape的工具
答案 1 :(得分:1)
您可以添加自定义类并使用 StringEscapeUtils 功能。
示例代码:
import org.apache.commons.lang.StringEscapeUtils;
public class CustomClass
{
public static void main(String args[]){
String testStr = "< > \" &";
System.out.println("Original : " + testStr);
System.out.println("Escaped : " + StringEscapeUtils.escapeHtml(testStr));
}
}
参考:http://www.mkyong.com/java/how-to-escape-special-characters-in-java/