redirect或者forward大家都再熟悉不过了,不过这个是基于配置的,不用你写代码,比如,你希望在访问某个目录的时候自动重订向到其他文件,或者直接转到其他网站比如google.com,配置如下:
<filter>
<filter-name>URLRedirectFilter</filter-name>
<filter-class>javawebparts.filter.URLRedirectFilter</ filter-class>
<init-param>
<param-name>configFile</param-name>
<param-value>/WEB-INF/redirect_config.xml </param-value>
</filter>
<filter-mapping>
<filter-name>URLRedirectFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-name>URLRedirectFilter</filter-name>
<filter-class>javawebparts.filter.URLRedirectFilter</ filter-class>
<init-param>
<param-name>configFile</param-name>
<param-value>/WEB-INF/redirect_config.xml </param-value>
</filter>
<filter-mapping>
<filter-name>URLRedirectFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
其中redirect_config.xml配置如下:
<config>
<redirect from="*/app/redirect_test/*" to="http://www.google.com" />
<forward from="*/app/forward/test.htm" to="/index.jsp" />
</config>
<redirect from="*/app/redirect_test/*" to="http://www.google.com" />
<forward from="*/app/forward/test.htm" to="/index.jsp" />
</config>
很直观吧?凡是访问/app/redirect_test下的所有应用都重订向到google,太简单了,我就不多说了.
六.估算每个请求所花费的时间
这个对性能调整是很有好处的,性能的调整的前提是你了解你的系统的瓶颈在什么地方,更具体的说是你的应用哪些地方花费的资源较多,一个是监控sql的执行情况,这里推荐jdbmonitor,大家可以去看看,另一种就是本文所说的查看每个请求的执行时间,他会告诉你本请求花费了多少秒,很直观了.
配置如下:
<filter>
<filter-name>ElapsedTimeFilter</filter-name>
<filter-class>javawebparts.filter.ElapsedTimeFilter</ filter-class>
<init-param>
<param-name>pathSpec</param-name>
<param-value>include</param-value>
</init-param>
<init-param>
<param-name>pathList</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>ElapsedTimeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-name>ElapsedTimeFilter</filter-name>
<filter-class>javawebparts.filter.ElapsedTimeFilter</ filter-class>
<init-param>
<param-name>pathSpec</param-name>
<param-value>include</param-value>
</init-param>
<init-param>
<param-name>pathList</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>ElapsedTimeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
上面的一个include ,一个pathList的*就代表了所有的应用都过滤,反之,你想暂时取消这个功能就直接把include换成exclude就行了
应用在启动后你直接观察后台日志就可以了,就这么就OK了,还要你做什么呢? 没有.