html转义文本---HttpServletRequest对象增强
来源:互联网 发布:ubuntu gcc安装失败 编辑:程序博客网 时间:2024/06/06 08:40
在表单提交文本时,文本内容本身可能就是一段html格式内容,因此要是不做转义直接显示在网页上时,将会被当做一段html文本进行显示,这就和本身提交的内容不符,因此可以对request对象进行增强,是提交的数据按其原格式进行显示。下面是个MyHtmlRequest包装类,其中filter方法是tomcat中HtmlFilter.java里的一段源码。
public class MyHtmlRequest extends HttpServletRequestWrapper {private HttpServletRequest request;public MyHtmlRequest(HttpServletRequest request) {super(request);// TODO Auto-generated constructor stubthis.request = request;} /* (non-Javadoc) * @see javax.servlet.ServletRequestWrapper#getParameter(java.lang.String) */@Overridepublic String getParameter(String name) {// TODO Auto-generated method stubString value = request.getParameter(name);if(value==null){return null;}return filter(value);}public String filter(String message) { if (message == null) return (null); char content[] = new char[message.length()]; message.getChars(0, message.length(), content, 0); StringBuilder result = new StringBuilder(content.length + 50); for (int i = 0; i < content.length; i++) { switch (content[i]) { case '<': result.append("<"); break; case '>': result.append(">"); break; case '&': result.append("&"); break; case '"': result.append("""); break; default: result.append(content[i]); } } return (result.toString()); }}Filter:
@Overridepublic void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain) throws IOException, ServletException {// TODO Auto-generated method stubHttpServletRequest request = (HttpServletRequest)req;HttpServletResponse response = (HttpServletResponse)resp;MyHtmlRequest myReq = new MyHtmlRequest(request);chain.doFilter(myReq, response);}
0 0
- html转义文本---HttpServletRequest对象增强
- 乱码问题---HttpServletRequest对象增强
- 过滤敏感词汇---HttpServletRequest对象增强
- HTML文本转义小窍门
- JQuery风格的HTML文本转义
- html原样输出文本不转义
- html--文本段落与转义字符
- HttpServletRequest 对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- HttpServletRequest对象
- Android应用间数据共享之ContentProvider
- Android四大组件之ContentProvider
- 黑马程序员------------------HelloWorld
- 编程能力与编程年龄
- Linux下网络流量实时监控工具
- html转义文本---HttpServletRequest对象增强
- SharePoint Site Pages & Application Pages
- 转义字符
- 广州传智播客——如果选择Java培训学校?广州传智播客
- Android知识点三:开机自启动
- 广州传智播客分析平面设计就业前景咋样
- 使用Knowledge Base实现跨领域的推荐
- 在广州传智播客学.Net就业薪水怎样?
- 我们再也回不去了,不是吗?