`
jinjiankang
  • 浏览: 113412 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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. 等等

 

分享到:
评论

相关推荐

    jforum-2.1.4-src.zip

    在这个《jforum-2.1.4-src.zip》压缩包中,包含了JForum 2.1.4版本的完整源代码,为开发者提供了深入理解其内部机制的宝贵机会。本文将围绕JForum的核心特性、数据库支持以及源码分析进行深入探讨。 首先,JForum...

    jforum的源代码和物理结构

    **JForum 源代码与物理结构详解** JForum 是一个功能丰富的开源论坛系统,以其高效、可扩展和用户友好的界面而闻名。这个压缩包包含 JForum 的源代码和类包,对于开发者来说,这是一个宝贵的资源,可以深入理解其...

    jforum-2.1.8-编译代码.zip

    总的来说,JForum 2.1.8的源代码是一个深入学习Java Web开发、论坛系统设计和MVC模式的实践案例。通过分析和理解这些代码,开发者不仅可以提升自身的编程技能,还能掌握如何设计和实现一个高可用、高性能的在线社区...

    jforum 2.1.9源码

    1. **插件系统**:JForum支持插件机制,开发者可以在`plugins`目录下创建新的插件,通过XML配置文件定义插件行为。 2. **模板修改**:Velocity模板允许开发者轻松定制界面。在`templates`目录下,可以找到所有页面...

    Jforum相关文档和PPT

    开发者可以通过跟踪源代码或日志来理解这一过程,以便在出现问题时快速定位原因。 处理请求的流程主要遵循Model-View-Controller(MVC)设计模式。在Jforum中,用户请求被控制器(Controller)接收,然后根据请求...

    Jforum-2.1.9

    例如,WEB-INF目录下存放着web.xml配置文件和库文件,src目录包含了源代码,lib目录则存放着项目依赖的JAR包。理解这些目录结构对于理解和维护项目至关重要。 此外,Jforum还提供了一套完善的API和文档,帮助开发者...

    jforum3 JAVA论坛源码

    《Jforum3:深入解析JAVA论坛开源代码》 Jforum3是一款基于JAVA语言开发的开源论坛软件,其源码开放,允许用户进行二次开发和定制,以满足不同需求。这款论坛系统以其稳定性和高效性在Java社区中广受欢迎。本文将...

    java开源包11

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包101

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包10

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包8

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包1

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包2

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包3

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包6

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包5

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包4

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包7

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    java开源包9

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

    Java资源包01

    JOpenID是一个轻量级的OpenID 2.0 Java客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor ...

Global site tag (gtag.js) - Google Analytics