JForum源代码研究—web.xml

web.xml

该文件非常简洁。

 

一个过滤器

    <filter>
        <filter-name>clickstream-jforum</filter-name>
        <filter-class>net.jforum.util.legacy.clickstream.ClickstreamFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>clickstream-jforum</filter-name>
        <url-pattern>*.page</url-pattern>
    </filter-mapping>

 

因为在JForum应用中,所有的URL都匹配*.page,所以该过滤器对任何HTTP请求都有效。该过滤器作用:设置属性request.setAttribute(FILTER_APPLIED, Boolean.TRUE)标识该请求已被过滤,request.setAttribute(ConfigKeys.IS_BOT, Boolean.valueOf(bot != null))标识该请求是否来自机器人(即网络爬虫)。

 

一个实现了接口HttpSessionListener的会话监听器

    <listener>
        <listener-class>net.jforum.ForumSessionListener</listener-class>
    </listener>

当Tomcat销毁一个会话时,JForum需要Tomcat做如下事情(即钩子方法):将用户会话信息保存到数据库中。

 

一个servlet

    <servlet>
        <servlet-name>jforum</servlet-name>
        <servlet-class>net.jforum.JForum</servlet-class>
       
        <init-param>
            <param-name>development</param-name>
            <param-value>true</param-value>
        </init-param>
    </servlet>

...

    <servlet-mapping>
        <servlet-name>jforum</servlet-name>
        <url-pattern>*.page</url-pattern>
    </servlet-mapping>

该servlet匹配所有URL。net.jforum.JForum主要作用:

  1. 初始化log4j.xml
  2. 加载SystemGlobals.properties
  3. 初始化缓存引擎
  4. 配置Freemarker模板引擎
  5. 加载urlPattern.properties
  6. 加载I18N配置文件
  7. 加载关于SQL的配置文件
  8. 加载关于定时任务的配置文件(关于quartz的)
  9. 等等

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值