本号紧张是Java常用关键技能点,通用工具类的分享;以及springboot+springcloud+Mybatisplus+druid+mysql+redis+swagger+maven+docker等集成框架的技能分享;datax、kafka、flink等大数据处理框架的技能分享。文章会不断更新,欢迎码友关注点赞收藏转发!
望各位码友点击关注,冲1000粉。后面会录制一些视频教程,图文和视频结合,比如:图书先容网站系统、抢购系统、大数据中台系统等。技能才是程序猿的最爱,码友们冲啊
如果码友以为代码太长,可以从头到尾快速扫射一遍,理解大概即可。以为有用后再转发收藏,以备时时之需。

正文:
Apache的StringEscapeUtils转义工具类,紧张是针对html、json、xml、js等的转义。详细利用场景在项目中并不是很多,以是可能理解的人也比较少。
StringEscapeUtils转义例子 import org.apache.commons.text.StringEscapeUtils; import org.junit.Test; public class StringEscapeUtilsTest { @Test public void test() { // 转义html脚本和反转义html脚本 String inputText = "<input type=\"button\" value=\"点我\"/>"; String s1 = StringEscapeUtils.escapeHtml4(inputText); System.out.println(s1); String s2 = StringEscapeUtils.unescapeHtml4(s1); System.out.println(s2); // 转义js脚本和反转义js脚本 String s3 = StringEscapeUtils.escapeEcmaScript("<script>alert('点我')<script>"); System.out.println(s3); String s4 = StringEscapeUtils.unescapeEcmaScript(s3); System.out.println(s4); // 把字符串转义为unicode编码和从把unicode编码转义为字符串 String s5 = StringEscapeUtils.escapeJava("abc不要点我了"); System.out.println(s5); String s6 = StringEscapeUtils.unescapeJava(s5); System.out.println(s6); // 转义XML和反转义XML String s7 = StringEscapeUtils.escapeXml11("<name>张三</name>"); System.out.println(s7); String s8 = StringEscapeUtils.unescapeXml(s7); System.out.println(s8); } }
其他方法:
工具类源码:
直接引入工具类的jar包即可
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-text</artifactId> <version>1.1</version> </dependency>
和本文利用的相同功能的工具类:
org.apache.commons.lang.StringEscapeUtils,与org.apache.commons.text.StringEscapeUtils工具类一样,但是apache把它表明为过期了,它还有个牛逼的方法便是转义sql【escapeSql】,但是建议利用本文利用的包;<dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version></dependency>
org.springframework.web.util.HtmlUtils,spring的一个工具类,紧张针对html,可以理解下;
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.3.6</version></dependency>
groovy.json.StringEscapeUtils,和org.apache.commons.text.StringEscapeUtils一样的功能,项目一样平常不用这个包,但是可以理解下;如果会groovy脚本的话该当用的就多,groovy-xxx有很多工具类的,但是我也没用过,感兴趣的可以探索下。
<dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>3.0.9</version> <type>pom</type></dependency>
鄙人编码十年多,在项目中也积累了一些工具类,很多工具类在每个项目都有在用,很实用。大部分是鄙人封装的,有些工具类是同事封装的,有些工具类已经不记得是ctrl+c的还是自己封装的了,现在有空就会总结项目中大部分的工具类,分享给各位码友。如果文章中涉及的代码有侵权行为请关照鄙人处理。
操持是先把工具类整理出来,正所谓工欲善其事,必先利其器。项目中不管是普通单体项目还是多模块maven项目或是分布衰落做事,一部分功能模块都是可以重用的,工具类模块便是个中之一。