SSH中转义特殊字符串以及非Web项目中的特殊字符转换
来源:互联网 发布:树莓派gpio编程 编辑:程序博客网 时间:2024/06/05 07:37
工作中需要把用户输入的特殊字符转义,以确保系统安全。
一、为何要这么做?
比如用户发个帖子,输入了<script>alert(1);</script>。如果我们不进行任何转义,那么当其他用户浏览这个帖子的时候,这段文字会被浏览器理解成javascript代码解释执行。
二、如何转义?
为了解决这个功能,我想起了JSTL中的<c:out/>标签可以对特殊字符进行转义,于是查找了一下源码,发现可以使用JSTL中的一个工具类,这个工具类的全名如下:
org.apache.taglibs.standard.tag.common.core.Util 用import引入该工具类并调用该工具类的escapeXml(String buffer) 方法即可。
下面的代码教会你如何在java代码中使用这个类
import org.apache.taglibs.standard.tag.common.core.Util;public class Aa { public static void main(String args[]) { String a = "aaaaa<bbbbb"; String b = Util.escapeXml(a); System.out.println("a: " + a); System.out.println("b: " + b); }}
三、如果您的项目中没有用到JSTL或者不是Web项目
这种情况比较少,但也存在。比如你给网站写个后台工具程序、或者你的网站全部用jsp的 <% .... %>标签编写 (=。=!)。我找到了Util类的源代码,并对其进行了改写,下载链接在下面:
点击打开链接
你只要把这个类拷贝进你的源码中并根据需要修改package后面的包名即可。
- SSH中转义特殊字符串以及非Web项目中的特殊字符转换
- Web开发中特殊字符的转义
- java转换 HTML字符实体,java特殊字符转义字符串
- android 字符串特殊字符转义
- Web.Config 特殊字符转义
- HTML字符实体(CharacterEntities),转义字符串(Escape Sequence),web.config中使用特殊字符
- HTML中的特殊转义字符
- linux中转义字符以及通配符、shell特殊字符
- JavaScript中字符串去掉特殊字符和转义字符
- jquery中特殊字符转义
- Myeclipse优化:自动转义字符串中的特殊字符
- lua--对字符串中的特殊字符进行转义
- java 字符串中特殊字符引号“ %百分号的转义
- html xml 转义符号 java 转换 HTML 字符 java 特殊字符转义字符串
- mybatis 中的<![CDATA[ ]]>防止转义xml中特殊字符
- Java中特殊字符处理(转义字符)
- java字符串截取特殊字符转义注意事项
- lua 字符串 正则表达式 转义 特殊字符
- ACM基本算法分类、推荐学习资料和配套pku习题
- Binder机制之Server端—MediaPlayerService::instantiate()
- android 内存溢出问题分析
- Hadoop集群环境部署
- 润乾报表软件
- SSH中转义特殊字符串以及非Web项目中的特殊字符转换
- JAVA中this用法小结
- NetConnect
- 挣脱浏览器的束缚(3) - 两个连接还不够“并行”
- UVA 494 - Kindergarten Counting Game
- 关于yum的问题
- 判断一个系统的大小端函数
- 倒水问题(智力)
- 通用存储过程(类型/时间)