⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multipassreplacementpageparser.java

📁 OS(OpenSymphony)的SiteMesh是一个用来在JSP中实现页面布局和装饰(layout and decoration)的框架组件
💻 JAVA
字号:
package com.opensymphony.module.sitemesh.multipass;import com.opensymphony.module.sitemesh.PageParser;import com.opensymphony.module.sitemesh.Page;import com.opensymphony.module.sitemesh.html.util.CharArray;import com.opensymphony.module.sitemesh.html.HTMLProcessor;import com.opensymphony.module.sitemesh.html.BasicRule;import com.opensymphony.module.sitemesh.html.Tag;import javax.servlet.http.HttpServletResponse;import java.io.IOException;public class MultipassReplacementPageParser implements PageParser {    private final Page page;    private final HttpServletResponse response;    public MultipassReplacementPageParser(Page page, HttpServletResponse response) {        this.page = page;        this.response = response;    }    public Page parse(char[] data) throws IOException {        final CharArray result = new CharArray(4096);        HTMLProcessor processor = new HTMLProcessor(data, result);        processor.addRule(new BasicRule("sitemesh:multipass") {            public void process(Tag tag) {                String id = tag.getAttributeValue("id", true);                if (!page.isPropertySet("_sitemesh.removefrompage." + id)) {                    currentBuffer().append(page.getProperty(id));                }            }        });        processor.process();        result.writeTo(response.getWriter());        return null;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -