我创建了一个抽象的基础类 < code> page , 以计算如何构建动态网页。 我试图找到一个好的方法, 以生成一个基于 GET
请求的 < code> page 。 例如,...
public class RootServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response) {
Page page = Page.generatePage(request);
// do stuff with page and write back response
}
}
在 generatePage ()
方法中,我必须不知怎么弄清楚需要哪个页面, 构建正确的页面, 然后返回一个实例。 但我不确定该如何做得很好... 例如, 我需要处理这些 URL :
http://example.com/ : build the default home page
http://example.com/ab123 : build the page corresponding to the given token "ab123"
http://example.com/about/ : build the "about" page
http://help.example.com/ : build the "help" page
这些“页面”中的每一页都扩展了抽象的基础等级Page
,让他们知道如何建立自己,但我不确定如何确定需要建造 AboutPage
,或HelpPage
,而不是默认的HomePage
。
我使用""http://pastread.apache.org/"rel="nofollow" >Apache Evercity 作为模板引擎,所以这些 Page
对象实际上只包含生成该页面所需的重要信息,例如要使用的样式和脚本,以及在页面上显示的相关内容。
我认为这样做比看URL的结尾更好,看看“关于”是否是一个用于构建 AboutPage
的子字符串。例如,有什么建议吗?