1、静态网页
静态页面,除了我们常见的.htm和.html以后,.asp .php .jsp也可以是静态的,关键是看.asp .php .jsp这些页面是否调用了数据库里的东西,如果没有调用,它就是静态页面,调用了,就是动态页面。
动态页面的含意就是,网页会根据访问者的请求,从服务器数据库里筛选访问者想要的内容显示到访问者的浏览器上,不同的人访问同一页面,会看到不同的内容,这个网页本身里并没有数据,只有一些代码,访问者看到的,都是服务器里调出来的。 就例如访问网址时后面的?中包含的数据这种请求
而静态页面,是事先把文字图片都放到页面里了,不需要从数据库里调,访问者访问一个页面,会直接从服务器把这个页面读出来显示到访问者的浏览器里,不需要数据库的支持。
2、伪静态
伪静态页面,其目的是为了更好的被搜索引擎收录而通过一定的规则(搜索引擎不收录含有?的网站),把动态页面的地址转换成以htm或html结尾的地址,看起来是静态的,实际是依然是动态页面。
3、JFinal如何实现伪静态
JFinal不会主动处理静态文件,而是直接交给web容器处理,例如tomcat。我们可以利用handler来进行处理。
因为在JFinal中xxx.html和xxx会被识别为同一文件,我们可以将静态网页文件的后缀取消,交给actionhandler处理。
同时记得在config中配置自定义handler。
public void configHandler(Handlers me) {
me.addHandler(new Handler1());
}
也可以利用JFinal提供的FakeStaticHandler类来实现,下面是FakeStaticHandler类源码。