<fix:htmlFilter> <a href="a 发 a a">超链接的写法</a> </fix:htmlFilter> |
package cn.itcast.web.tag.example;
import java.io.IOException; import java.io.StringWriter;
import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.JspFragment; import javax.servlet.jsp.tagext.SimpleTagSupport;
public class HtmlFilter extends SimpleTagSupport {
@Override public void doTag() throws JspException, IOException { JspFragment jf=this.getJspBody(); StringWriter sw=new StringWriter(); jf.invoke(sw); String content=sw.getBuffer().toString(); content=filter(content); this.getJspContext().getOut().write(content); } /*C:\\Tomcat 7.0\\webapps\\examples\\WEB-INF\\classes\\util\\HTMLFilter.java*/ public static 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()); } } |
JSP:自定义标签之开发html转义标签
最新推荐文章于 2021-07-14 04:36:09 发布