jetbrick template 与 Jodd Madvoc 的集成

1. 首先需要配置 web.xml 文件 (分别为 jodd Madvoc 和 jetbrick-template 配置)

    <context-param>
        <param-name>jetbrick-template-config-location</param-name>
        <param-value>/WEB-INF/jetbrick-template.properties</param-value>
    </context-param>
    <listener>
        <listener-class>jetbrick.template.web.JetWebEngineLoader</listener-class>
    </listener>

    <filter>
        <filter-name>madvoc</filter-name>
        <filter-class>jodd.madvoc.MadvocServletFilter</filter-class>
        <init-param>
            <param-name>madvoc.params</param-name>
            <param-value>/madvoc.props</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>madvoc</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

2. 在 classpath 下面配置 madvoc.props 文件

[jetbrick.template.web.jodd.JetTemplateResult]
contentType=text/html; charset=UTF-8

[automagicMadvocConfigurator]
includedEntries=jodd.*,jetbrick.template.web.jodd.*,app.demo.actions.*

3. 新建 /WEB-INF/jetbrick-template.properties 

import.packages = app.demo.model

template.reloadable = true
compile.debug = true

4. 新建一个 Jodd action

@MadvocAction
public class UsersAction {

    @Out
    Collection<UserInfo> userlist;

    @Action(extension = Action.NONE)
    public Object view() {
        userlist = DaoUtils.getUserList();
        return "jetx:/users.jetx";
    }
}

5. 新建一个 users.jetx 模板文件

<table border="1" width="600">
  <tr>
    <td>ID</td>
    <td>姓名</td>
    <td>邮箱</td>
    <td>书籍</td>
  </tr>
  #for(UserInfo user: userlist)
  <tr>
    <td>${user.id}</td>
    <td>${user.name}</td>
    <td>${user.email}</td>
    <td><a href="books?author=${user.id}">书籍列表</a></td>
  </tr>
  #end
</table>

6. OK,放在 tomcat 中,然后访问 http://127.0.0.1:8080/users

注意:jetbrick-template 将在下一个版本 (1.1.3) 中内置 jodd 的集成。


你可能感兴趣的:(jodd,template,模板引擎,jetbrick)