VMC Injection是一个开源Java模板框架,它是由vmcreative公司开发,并在最近刚刚发布的。VMC Injection支持任何Java数据结构,(例如:JDBBC,POJO,HashMap等),并且VMC Injection可以很容易的将这些Java数据结构注入到文本模板中(HTML/XML等模板)
VMC Injection(Java模板框架)被用于vmcreateive公司的很多商业项目中,如在web应用程序中,借助Servlet和VMC Injection生成动态的网页,XML等。当前的VMC Injection是该公司的第一个开源产品,他们很期望聆听大家对VMC Injection的反馈信息。因为这将帮助VMC Injection(开源Java模板框架)更加进步。VMC Injection(开源Java模板框架 )目前采用的是完全免费的Apache 2许可。
笔者是一个Tapestry的爱好者,Tapestry同样是一个非常优秀的模板框架,二者看起来有异曲同工之妙啊!
下面是使用 VMC Injection(开源Java模板框架) 的一个简单例子,例子中 VMC Injection(开源Java模板框架) 将通过Servlet把JDBC的结果插入到HTML文件中:
ShowUser.html:
Id: #id
Name: #name
Address: #address
Phone: #phone
Email: #email
ShowUser.java:
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws
ServletException, IOException {
// 需要注入Java数据的html模板
InjectionTarget htmlTarget = new HTMLInjectionTarget("ShowUser.html");
// JDBC结果集
ResultSet rs = getUsers();
HashMap injections = new HashMap();
injections.put("Users", new SQLInjection(rs));
// Servlet响应
response.setContentType(CONTENT_TYPE);
OutputStream out = response.getOutputStream();
InjectionStreamer injectionStreamer;
injectionStreamer = new injectionStreamer(htmlTarget);
injectionStreamer.streamTo(out, injections);
}
下面是 VMC Injection(开源Java模板框架) 的一些特性:
VMC Injection完全分离Java代码和模板文件(HTML/XML等)
VMC Injection支持任何Java数据结构在模板中的注入,无需为特定的Java数据结构(JDBC ResultSets等)指定专门的访问方法。例如您无需为ResultSet或者List编写循环标签。
VMC Injection使用Java标准的格式化类对输出格式进行控制