Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
来源:互联网 发布:highcharts饼状图数据 编辑:程序博客网 时间:2024/04/30 13:10
导读:
未显示需要 JavaScript 的文档选项
级别: 初级
陈 雄华(quickselect@163.com), 技术总监, 宝宝淘网络科技有限公司
2007 年 8 月 31 日
Spring 不但提供了一个功能全面的应用开发框架,本身还拥有众多可以在程序编写时直接使用的工具类,您不但可以在 Spring 应用中使用这些工具类,也可以在其它的应用中使用,这些工具类中的大部分是可以在脱离 Spring 框架时使用的。了解 Spring 中有哪些好用的工具类并在程序编写时适当使用,将有助于提高开发效率、增强代码质量。
在这个分为两部分的文章中,我们将从众多的 Spring 工具类中遴选出那些好用的工具类介绍给大家。第 1 部分介绍了与文件资源操作和 Web 相关的工具类。在第 2 部分中将介绍特殊字符转义和方法入参检测工具类。
特殊字符转义
由于 Web 应用程序需要联合使用到多种语言,每种语言都包含一些特殊的字符,对于动态语言或标签式的语言而言,如果需要动态构造语言的内容时,一个我们经常会碰到的问题就是特殊字符转义的问题。下面是 Web 开发者最常面对需要转义的特殊字符类型:
HTML 特殊字符;
JavaScript 特殊字符;
SQL 特殊字符;
如果不对这些特殊字符进行转义处理,则不但可能破坏文档结构,还可以引发潜在的安全问题。Spring 为 HTML 和 JavaScript 特殊字符提供了转义操作工具类,它们分别是 HtmlUtils 和 JavaScriptUtils。
HTML 特殊字符转义
HTML 中 <,>,& 等字符有特殊含义,它们是 HTML 语言的保留字,因此不能直接使用。使用这些个字符时,应使用它们的转义序列:
&:&
" :"
<:<
> >:>
由于 HTML 网页本身就是一个文本型结构化文档,如果直接将这些包含了 HTML 特殊字符的内容输出到网页中,极有可能破坏整个 HTML 文档的结构。所以,一般情况下需要对动态数据进行转义处理,使用转义序列表示 HTML 特殊字符。下面的 JSP 网页将一些变量动态输出到 HTML 网页中:
清单 1. 未进行 HTML 特殊字符转义处理网页
姓名:年龄:28
②
在 ① 和 ② 处,我们未经任何转义处理就直接将变量输出到 HTML 网页中,由于这些变量可能包含一些特殊的 HTML 的字符,它们将可能破坏整个 HTML 文档的结构。我们可以从以上 JSP 页面的一个具体输出中了解这一问题:
① 破坏了
② 将本来是输入框组件偷梁换柱为按钮组件
融合动态数据后的 HTML 网页已经面目全非,首先 ① 处的
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring—Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点,特殊字符转义和方法入参检测工具类
- Spring 的优秀工具类盘点 之 特殊字符转义和方法入参检测工具类
- Spring 工具类 2: 特殊字符转义和方法入参检测工具类
- Spring 特殊字符转义和方法入参检测工具类
- fjnu 1322 Easier Done Than Said?
- 东方通信(600776)
- Spring 的优秀工具类盘点,第 1 部分: 文件资源操作和 Web 相关工具类
- liferay portal4.4 glassfish 的安装
- 消费电子在奥运驱动下的七大热点应用
- Spring 的优秀工具类盘点,第 2 部分: 特殊字符转义和方法入参检测工具类
- fjnu 1298 Are We There Yet?
- 左右手互博的感觉
- 管理员身份获得 SYSTEM 权限的四种方法
- C语言笔试题之3
- 网页制作技巧24条
- 如何使用links配置eclipse的plugin
- 拥有至高无上的特权 使用system账户
- Oracle树问题(10G平台)