很多时候,我们为了安全,会对存储的信息,进行转义,过滤等处理,这样带来的坏处是,破坏原始的数据,而且转义会占用多余的空间.

本人使用JFinal框架,开始考虑过全局设置过滤器,有的不需要的也会转义,不是很友好~

首先,自定义一个格式化类XSSDefenseFormat.java

import org.apache.commons.lang.StringEscapeUtils;

import org.beetl.core.Format;

public class XSSDefenseFormat implements Format {

@Override

public Object format(Object data, String pattern) {

if (null == data) {

return null;

} else {

return StringEscapeUtils.escapeHtml((String) data);

}

}

}

然后注册该格式化

groupTemplate.registerFormat("xss", new XSSDefenseFormat());

最后针对需要的地方,进行xss处理

${a.name, xss}

使用结果不再弹出alert提示

可以根据自己实际需求,自定义一些其他方法.

原文:http://my.oschina.net/smile622/blog/300137

beetl html 转义,Beetl解决XSS问题相关推荐

  1. beetl html 转义,beetl 前端

    1. 自定义标签和html标签 模版基础配置.文件位置:/org/beetl/core/beetl-default.properties l html标签: HTML_TAG_SUPPORT = tr ...

  2. 使用HTML Purifier解决XSS问题

    在php里解决XSS最简单的方法是使用htmlspecialchars转义xml实体,但对于需要使用xml的时候就搏手无策了.之前一直使用一个叫 RemoveXSS 的函数,该函数过滤得比较严格,很多 ...

  3. JS之前台参数提交到后台,双引号转义为解决办法

    问题描述 var param = $("#searchForm").serializeJson(); 前台封装好了键值对形式的字符串,使用了EasyUI的treeGrid控件,传到 ...

  4. php mysql自动反转义_ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法...

    这篇文章主要介绍了ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法,主要通过针对magic_quotes_gpc开启的情况下进行检查与判断转义来实现,需要的朋友可以参考下 本文实例讲述了 ...

  5. java beetl 视频_08.Beetl自定义方法以及直接访问java类方法---《Beetl视频课程》

    本期视频实现了发布评论时间自定义显示: 内容简介:使用了自定义方法以及直接访问java方法实现了发布时间自定义显示 作者:GK 自定义方法 我们想要实现类似于${ strutil.subString ...

  6. url特殊字符转义及解决方法

    URL特殊字符需转义 1.空格换成加号(+) 2.正斜杠(/)分隔目录和子目录 3.问号(?)分隔URL和查询 4.百分号(%)制定特殊字符 5.#号指定书签 6.&号分隔参数 转义字符的原因 ...

  7. django中,kindeditor存到数据库的html,前台html标签被自动转义的解决办法

    2019独角兽企业重金招聘Python工程师标准>>> 1,使用kindeditor进行了上传图片功能,存储到后台的html代码为: <img src="/stati ...

  8. java解决XSS攻击常用方法总结

    前言 在项目验收阶段,通常会对待验收项目做一些安全漏洞的测试,比如接口攻击,并发测试,XSS注入,SQL恶意注入测试,安全越权等操作,这时,就是考验项目的安全方面是否做的足够健壮的时候,本篇对XSS脚 ...

  9. java beetl 视频_04.Beetl常用内置函数以及安全输出---《Beetl视频课程》

    本期视频实现了三个功能,模糊搜索.标签分类.登录/注销功能: 内容简介:使用了常用内置函数,以及安全输出,实现了上面提到的三个业务 作者:GK 常用内置方法 date 返回一个java.util.Da ...

  10. php mysql插入的数据有引号,PHP引号转义中解决POST,GET,Mysql数据自动转义问题

    在处理mysql和GET.POST的数据时,常常要对数据的引号进行转义操作. PHP中有三个设置可以实现自动对'(单引号),"(双引号),\(反斜线)和 NULL 字符转转. PHP称之为魔 ...

最新文章

  1. 杭州程序员吐槽:月薪1.3万,结婚需要给女方彩礼35-40万,直呼结不起!网友回复:娶老婆还是娶祖宗?...
  2. 武汉大专计算机专业分数线,武汉专科大学有哪些 2019武汉专科大学排名及分数线...
  3. Sql日期时间格式转换
  4. 在debian上安装vmware tools的问题
  5. vwap算法下单_时间加权平均价格算法(TWAP)和成交量平均算法(VWAP)在量化回测的应用...
  6. VMware15.0安装CentOS7
  7. c语言自动化课题设计,自动化专业C语言程序设计课堂教学方案设计和实践.doc
  8. 查看磁盘阵列 使用率(简单)
  9. 单片机STM8S测量电压电路_50个单片机晶振问题及解决方法小结
  10. Vue中动态切换组件
  11. 2018 年 8 月面试路:6 天 21 家公司
  12. 公文标题排版(样式修改)
  13. 【MOGDB/openGauss的txid_snapshot 数据类型和相关函数】
  14. 与二次元老婆邂逅的游戏的创建过程(一)
  15. Hadoop 3.2.1 【 YARN 】源码分析 : DefaultContainerExecutor 浅析
  16. NSNS小队成立啦!
  17. 基于S3C2410平台移植Linux 2.6内核指南
  18. [随笔]圣西罗南看台:AC米兰的2019,至暗时刻的陪伴与坚守
  19. matlab光学仿真——菲涅尔透镜优化代码
  20. 快速入门msp430g2553

热门文章

  1. 结构体定义LNode,*LinkList和typedef struct
  2. Python的学习笔记案例4--52周存钱挑战1.0
  3. VNC远程控制服务器卡顿
  4. win10熄屏时间不对_浅析win10电脑屏幕熄屏时间设置教程
  5. Bridging the Gap Between Anchor-based and Anchor-free Detection 阅读
  6. 圆面积公式积分法推导
  7. 微信开发:账号申请,AppID、AppSecret 获取方式
  8. PyQt5 clicked和clicked[bool]信号区别/setCheckable()的应用
  9. qt toggled trigger clicked区别
  10. php天猫列表数据抓取,天猫数据抓取方法_简易采集 - 八爪鱼采集器