This Domain(Admin5.com) is for Sale:

Velocity 的应用示例

时间:2007-10-22  来源:不详  作者:林子

import javax.servlet.http.HttpServletResponse;

import org.apache.velocity.context.Context;

public class AboutSubPage extends ProcessSubPage

{

public AboutSubPage()

{

}

public String getHtml(VelocityServlet servlet, HttpServletRequest request,HttpServletResponse response, Context context)

{

//prepare data//context.put("xxx","xxxx");

Template template = null;

String fileName = "About.htm";

try

{

template = servlet.getTemplate(fileName);

StringWriter sw = new StringWriter();

template.merge(context, sw);

return sw.toString();

}

catch (Exception ex)

{

return "error get template " fileName " " ex.getMessage();

}

}

}

其他 ProcessSubPage 的子类如上面基本类似,只不过会多了一些 context.put("xxx","xxxx") 的语句。

通过以上的例子,我们可以看到,使用 Velocity Servlet , 所有的代码为: 1 个 java serverlet m 个 java class n 个 Html 文件。

这里是用了集中处理,然后分发(dispatch)的机制。不用担心用户在没有登陆的情况下访问某些页面。用户验证,页眉页脚包含都只写一次,易于编写、修改和维护。代码比较简洁,并且很容易加上自己的页面缓冲功能。可以随意将某个页面的 html 在内存中保存起来,缓存几分钟,实现页面缓冲功能。成功、出错页面也可以用同样的代码封装成函数,通过参数将 Message/Title 传入即可。

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息