能直接访问网页吗 比如没有需要传递的参数 我不想再在控制器中写action了,直接调用页面
比如我在index文件夹下有个add.我想直接访问,不想在控制器中在写个函数调用add.html
换句话说 :我每调用一个界面都需要些个action 我觉得挺烦 。
我试了下 只有在根目录下的html才能不写action直接调用。
写了个控制器 解决这个问题
HtmlController Controller { () { String strUrl = getPara()System..println(strUrl)renderTemplate(strUrl + )} }
当然,在 jfinal 下是很容易支持这种模式的,你甚至可以只有页面和一些工具类,大致这么来玩:
1:创建一个 Handler 用于接管所有请求,将请求直接生成String templateFile 这个对象指向模板文件,大致如下:
public void handle(target, req, res, isHandled) {
String templateFileName = buildTemplateFileName(target);
Engine.use().getTemplate(templateFileName).render(...);
isHandled[0] = true;
}
2:创建一些用于操作数据库的工具类,或者直接用 jfinal 的数据库工具类配置给 Engine
Engine.use().addSharedObject("Db", Db.use());
3:在页面可以这样用了:
#for ( x : Db.find("select * from account where ..." ...))
#(x.userName)
#end
通过上面的方式,你可以完全避免掉 Controller、Interceptor、Render 等所有的东东,一般我不告诉小伙伴们这么来玩