commons.lang
StringEscapeUtils 处理字符转义与反转义
common.utils; import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import org.junit.Test; import org.springframework.web.util.HtmlUtils; public class StringUtilsTest { @Test public void test() { String str="你好呀,<input>这里真不错!"; // ---JavaScript // String javascriptStr="<script>alert('你好111')</script>"; // System.out.println(StringEscapeUtils.escapeJavaScript(javascriptStr)); // System.out.println(StringEscapeUtils.unescapeJavaScript(javascriptStr)); //输出 <script>alert(\'111\')</script> // <script>alert('111')</script> // ----SQL // StringBuffer sql = new StringBuffer("select * from inf_moderator_info info where 1=1 "); // if(!CommUtil.isEmpty(keyWord)){ // String keyWord = " ' or 1=你好1 '"; // String keyWord = "很好%"; // System.out.println(StringEscapeUtils.escapeSql(keyWord)); // sql.append(" and info.introduction like '%" + StringEscapeUtils.escapeSql(keyWord) + "%'"); // System.out.println(sql); //输出 '' or 1=1 '' // --html // String html="<A>你好dddd</A>"; // System.out.println(StringEscapeUtils.escapeHtml(html)); // System.out.println(StringEscapeUtils.unescapeHtml(html)); // --escapeJava/unescapeJava 把字符串转为unicode编码 // String java="你好dddd"; // System.out.println(StringEscapeUtils.escapeJava(java)); // System.out.println(StringEscapeUtils.unescapeJava(java)); // \u4F60\u597Ddddd // 你好dddd // String xml="你好dddd"; // System.out.println(StringEscapeUtils.escapeXml(xml)); // System.out.println(StringEscapeUtils.unescapeXml(xml)); // 你好dddd // 你好dddd String a = "<html>吃饭</html>' or 1=1 '<input></input>"; System.out.println(StringEscapeUtils.escapeHtml(a)); // a=StringEscapeUtils.escapeHtml(a); // System.out.println(StringEscapeUtils.unescapeHtml(StringEscapeUtils.escapeHtml(a))); // System.out.println(HtmlUtils.htmlEscape(a)); System.out.println(HtmlUtils.htmlUnescape(a)); System.out.println(StringEscapeUtils.unescapeHtml(HtmlUtils.htmlEscape(a))); // <html>吃饭</html><input></input> // <html>吃饭</html><input></input> // <html>吃饭</html><input></input> // <html>吃饭</html><input></input> // System.out.println(escapeStr(str)); } public static String escapeStr(String str) { if (StringUtils.isEmpty(str)) { return ""; } str = StringEscapeUtils.escapeSql(str); str = StringEscapeUtils.escapeHtml(str); // str = StringEscapeUtils.escapeJava(str); // str = StringEscapeUtils.escapeJavaScript(str); return str; } /** * 字符反转义 * * @param str * @return */ public static String unescapeStr(String str) { if (StringUtils.isEmpty(str)) { return ""; } str = StringEscapeUtils.unescapeHtml(str); str = StringEscapeUtils.unescapeJava(str); str = StringEscapeUtils.unescapeJavaScript(str); return str; } }
相关推荐
代码包含: EscapeUtil.java:特殊字符(\,_,%)转义工具类 MyQueryInterceptor.java: Mybatis自定义拦截器 注意:该拦截器只支持QueryWrapper的like方法,serviceImpl层传全角模糊查询(%%) mapper或xml层的全角模糊查询(%...
特殊字符(\,_,%)转义工具类 MyQueryInterceptor.java: Mybatis自定义拦截器 注意:该拦截器只支持QueryWrapper的like方法,serviceImpl层传全角模糊查询(%%) mapper或xml层的全角模糊查询(%*%)和半角模糊查询(%*或*%)
转义表单提交字符处理函数,可用于php或javascript的字符处理函数列表
id中包含其他特殊字符比如 /@ 等为了利用jquery获取该元素需要转义特殊字符,具体实现如下,感兴趣的朋友可以参考下
今天小编就为大家分享一篇pymysql 插入数据 转义处理方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
由于正则表达式定了一些特殊字符,而有时候需要对这些特殊字符进行匹配的话就需要进行转义了,下面这篇文章主要给大家介绍了Java正则表达式处理特殊字符转义的方法,需要的朋友可以参考借鉴,下面来一起看看吧。
NULL 博文链接:https://herry.iteye.com/blog/1976955
自定义拦截器的基本应用及设值
Mybatis在Mapper.xml文件中对大于、小于、大于等于、小于等于等符号进行转义字符处理的几种方式
原因是thinkphp在入库的时候没有判断 magic_quotes_gpc 是否开启,不管三七二十一地进行了转义处理。 解决办法是在入口文件增加如下代码则可: 复制代码 代码如下:if (!get_magic_quotes_gpc()) { function ...
需要将其转义后才能在网页上显示。 转义字符(Escape Sequence)也称字符实体(Character Entity)。定义转义字符串的主要原因是 “<”和“>”等符号已经用来表示HTML TAG,因此不能直接当作文本中的符号来使用。但...
这或许会是一个让人迷惑,甚至感到混乱的话题,但也正...而当这些元字符被要求匹配其本身时,就要进行转义处理了。 不同的语言或应用场景下,正则定义方式、元字符出现的位置不同,转义的方式也是林林总总,不一而同。
C# json格式转换,Json格式字符串与C#对象相互转换,类库和测试demo 写了一个json与C#对象相互装换的类库,直接调用就行,有测试案例,代码注释非常详细 .../// 进行简单的转义处理。只处理 \ 和 " /// 识别Json中的值
正则表达式特殊字符的转义,常用网页特殊字符转义,网络爬虫特殊字符处理
NULL 博文链接:https://sw1982.iteye.com/blog/975340
本文以实例形式讲述了PHP实现数组递归转义的方法,分享给大家供大家参考之用。具体方法如下: ... }else if (is_array($v)) { //若为数组,则再转义. $arr[$k] = changes($v); } } return $arr; } print_r
在一个字符串中,如果某个序列具有特殊的含义,每个序列以反斜线符号 (“”)开头,称为转义字符。 MySQL 识别下列转义字符...这个字符可以处理在 Windows 系统中 ASCII(26) 代表一个文件的结束的问题。(当使用 mysql da
防御者可能在用户输入恶意数据时对其中的特殊字符进行了转义处理,但在恶意数据插入到数据库时被处理的数据又被还原并存储在数据库中,当web程序调用存储在数据库中恶意数据并执行SQL查询时,就发生了SQL二次注入。...