【发布时间】:2009-12-10 16:00:57
【问题描述】:
为 Java 网站实现复合视图模式的最佳方法是什么?
我的想法是采用一个 jsp 并包含多个页面,例如:
<h1>Layout Start</h1>
<%
Values values = DataHandler.getValues(request);
LayoutHelper layout = values.getLayout();
out.println("Layout.getContent(): " + layout.getContent());
%>
<jsp:include page="<%= layout.getContent() %>" flush="false" />
<h1>Layout End</h1>
但是我在WEB-INF目录中的所有小jsp文件仍然可供用户使用。如何拒绝访问除一个模板之外的所有 .jsp 文件。
之后我需要一个过滤器或 Servlet 来在 Values 对象中插入路径。
更新
我并不是说 WEB-INF 可以从文件系统(或 Web 服务器)访问,而是从 Web 应用程序通过控制器访问,我当前的布局 layout.getcontent() 映射到 URL 参数/用户输入。
处理复合视图模式的常用框架有哪些?
【问题讨论】: