欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JFinal 是否可以配置类似.html这样的伪静态? 链接替换?

程序员文章站 2024-02-12 12:40:40
...

不仅可以,而且极度简单,不需要urlrewrite这么厚重的东东,只需创建一个FakeStaticHandler类即可搞定,且看这里:

public class FakeStaticHandler extends Handler {
  public void handle(String target, HttpServletRequest request, HttpServletResponse response, boolean[] isHandled) {
    int index = target.lastIndexOf(".html");
    if (index != -1) {
      target = target.substring(0, index);
    }
    nextHandler.handle(target, request, response, isHandled);
  }
}

将上面的FakeStaticHandler在 YourJFinalConfig 中注册一下就可了:

public void configHandler(Handlers me) {
  me.addHandler(new FakeStaticHandler());
}


 jfinal 新版本已经提供了 FakeStaticHandler,直接用就行: me.add(new FakeStaticHandler(".html"));