集成beetl
优质
小牛编辑
125浏览
2023-12-01
基本信息
在MainModule声明@Views,引入BeetlViewMaker
@Views({BeetlViewMaker.class})
在conf目录beetl.properties下添加配置文件
RESOURCE_LOADER=org.beetl.core.resource.WebAppResourceLoader
#ERROR_HANDLER=net.wendal.nutzbook.beetl.LogErrorHandler
RESOURCE.root=/WEB-INF/templates/beetl
在目录 /WebContent/WEB-INF/templates/beetl 下添加一个模板, hello.html
总共 ${obj.list.~size}
<%
for(user in obj.list){
%>
hello,${user.nickname};
<%}%>
当前页${obj.pager.pageNumber},总共${obj.pager.pageCount}页
新建个BeetlTemplateModule类,加入下述方法
@At
@Ok("beetl:hello.html")
@Fail("void") // beelt的机制导致只能使用void,详细原因看nutzbook中的代码吧
public Object hello() {
QueryResult qr = new QueryResult();
Pager pager = dao.createPager(1, 20);
pager.setRecordCount(dao.count(UserProfile.class));
qr.setPager(pager);
qr.setList(dao.query(UserProfile.class, null, pager));
return qr;
}
访问该入口方法即可看到效果
可能出现的问题
- 找不到模板, 需要在beetl.properties中把RESOURCE.root设置为绝对路径,貌似新版beetl已经解决这个问题.