`
ericxu131
  • 浏览: 189577 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JForum源码学习研究4-编写action

阅读更多
JForum展示层介绍
JForum论坛没有使用主流的MVC框架,而是自己实现了一套简单的MVC框架。

JForum的MVC框架和现在流行的Struts2一样,使用了与web容器松耦合的设计,并没有直接为用户暴露HttpServletRequest和HttpServletResponse接口,而是提供了net.jforum.context.RequestContext和net.jforum.context.ResponseContext这两个接口,与Struts2不同的是JForum的action还是需要继承net.jforum.Command这个对象,并非一个简单的POJO。

JForum页面显示并没有使用JSP,而是使用freemarker的模板,框架本身与freemarker耦合在了一起,并非像Struts2可以灵活的替换显示方式。

基本开发流程
开发JForum的Action非常简单,首先我们要从几个方面入手。

1.建立action
新建一个类继承与net.jforum.Command

2.注册action
到JForum的WEB-INF/config目录找到modulesMapping.properties,在里面配置一个模块名称和对应的类
如:test=net.jforum.view.test.TestAction

3.注册模板
到JForum的WEB-INF/config目录找到templatesMapping.properties
在里面配置一个模板名称对应一个具体的显示页面(页面默认都要放在templates/default目录下)
如:test.show= test_show.htm
修改net.jforum.util.preferences.TemplateKeys类
在里面配置常量
如:
public static final String TEST_SHOW = "test.show";

4.新建方法
private void show()
	{
//选择显示模板
		this.setTemplateName(TemplateKeys.TEST_SHOW);

//组装模板变量
		this.context.put("title", request.getParameter("title"););
		this.context.put("description", request.getParameter("description"););
	}


5.配置参数映射
到JForum的WEB-INF/config目录找到urlPattern.properties
在里面配置参数
如:test.show.2 = title, description
    模块名称.方法名称.方法参数个数=参数1名称,参数2名称...

6.运行
完成以上操作后访问
http://localhost:8080/test/show/arg1/arg2.page


这里说一下JForum的url的解析方式,这里举个例子:
http://localhost:8080/test/show/arg1/arg2.page

这个Url的实际含义是:
http://localhost:8080/jforum/模块名称/方法名称/参数1/参数2.page

modulesMapping.properties中的配置:
test=net.jforum.view.test.TestAction
这里的test就是模块名称

urlPattern.properties中的配置:
test.show.2 = title, description
这里的title和description就是参数1和参数
之后在action中通过
request.getParameter("description");
request.getParameter("title");
可以取得它们的值


小结:
在JForum中建立一个action应该说还是比较容易的,在这里它选用freemarker做为显示方式想必也是为了方便美工编辑和美化模板,毕竟对于美工来讲htm编辑起来绝对是比jsp来的方便的。
分享到:
评论
1 楼 snailness 2008-05-07  
最近在看jforum,看了你的文章受益良多

相关推荐

    JForum-2.1.6-src.zip_JForum-2.1.4_JForum-2.1.6-src_ejb_jforum_jf

    在提供的压缩包`JForum-2.1.6-src`中,我们可以看到源代码的完整结构,包括但不限于以下关键部分: - **src**: 包含了所有源代码,按照MVC结构组织,如`model`、`view`和`controller`目录。 - **webapp**: 存放Web...

    jforum 源码

    对于想要深入了解FreeMarker模板引擎的开发者来说,JForum的源码是一个绝佳的学习资源。本篇文章将深入探讨JForum源码中的核心知识点,以及它如何与FreeMarker结合提供动态网页生成。 1. **FreeMarker模板引擎** ...

    开源BBS--JForum 源码

    学习JForum的源码,你不仅可以掌握Java Web开发的基本技巧,还能了解到如何设计一个大型的、可扩展的论坛系统。这对你提升自己的编程能力,尤其是Java和Web开发技能,将大有裨益。同时,如果你计划开发自己的论坛...

    jforum-2.1.8-src.zip

    《JForum 2.1.8 源码解析与探讨》 JForum,一个知名的开源论坛系统,以其高效、可扩展性和丰富的功能在互联网上广受...总的来说,JForum 2.1.8的源码不仅是一份开源软件的实例,也是广大开发者学习和提高的宝贵资源。

    JForum-2.1.4.rar_JForum-2.1.4_java 论坛源码_jforum_论坛源码_论坛网站源码

    源码开放意味着你可以深入研究其内部结构,学习优秀的编程实践,或者根据自己的需求进行二次开发。在部署方面,JForum 可以运行在任何支持Java的Web服务器上,如Tomcat、Jetty等,与数据库如MySQL、PostgreSQL等配合...

    jforum 2.1.9源码

    4. **Internationalization**:JForum支持多语言,源码中的`i18n`目录包含了各种语言的资源文件。 5. **Security**:安全是论坛系统的重点,JForum通过`com.jforum.security`实现了用户权限控制和防止SQL注入等功能...

    jforum说明文档 源码解析 单点登录 jforum缓存

    在提供的压缩包中,`Jforum-ppt`可能包含关于Jforum的详细讲解或演示材料,如开发教程、架构解析、功能介绍等。通过阅读这些PPT,你可以更直观地了解Jforum的工作原理和应用场景,对学习和使用Jforum大有裨益。 ...

    jforum-2.1.8-编译代码.zip

    在这个"jforum-2.1.8-编译代码.zip"压缩包中,包含了JForum 2.1.8版本的源代码,对于开发者来说,这是一个深入理解JForum工作原理、进行二次开发或定制化改造的宝贵资源。 首先,让我们了解JForum的基本架构。...

    jforum-2.1.8-src.zip_JForum-2.1.8_The Watch_jforum_jforum 2.1.8-

    Personally think is the best forum for the Java source code, open source, you can watch the official website of the latest developments http://www.jforum.net/

    JForum_SSO_-_JForum单点登陆原理与配置

    2. **配置JForum**:完成SSO类的编写后,需要在JForum的配置文件中进行配置,使其使用这个自定义的SSO类。具体的配置步骤可能涉及修改`forum.properties`或其他相关配置文件,确保JForum在启动时加载并使用自定义的...

    JForum v2.1.9 源码版

    JForum 是采用Java开发的功能强大且稳定的论坛系统。它提供了抽象的接口、高效的论坛引擎以及易于使用的管理界面,同时具有完全的权限控制、多语言支持(包括中文)、高性能、可自定义的用户接口、安全、支持多...

    jforum2论坛源码

    通过研究jforum2源码,可以学习如何实现这些功能,并了解论坛系统的常见架构设计。 4. **性能测试**:JMeter的使用是测试jforum2性能的关键。开发者需要了解如何创建测试计划,定义线程组(模拟用户),设置采样器...

    jforum-2.1.4-src.zip

    文件列表中的“JForum-2.1.4”目录包含了项目的全部源码和配置文件,其中“WEB-INF”目录下存放了Web应用的相关资源,如web.xml配置文件,定义了应用的初始化参数和Servlet映射。"src"目录则是Java源码的存放地,...

    开源jsp论坛jforum-2.1.9源码带mysql数据库文件

    总之,开源论坛jforum-2.1.9源码提供了丰富的学习资源,无论是对JSP、Servlet、JavaBean技术的实践,还是对MySQL数据库管理的理解,或是对Web应用开发流程的掌握,都具有很高的学习价值。对于希望深入理解Java Web...

    JForum 2.1.9 源码包.zip

    JForum 是采用Java开发的功能强大且稳定的论坛系统。它提供了抽象的接口、高效的论坛引擎以及易于使用的管理界面,同时具有完全的权限控制、多语言支持(包括中文)、高性能、可自定义的用户接口、安全、支持多...

    Jforum-2.1.9

    《Jforum-2.1.9:构建高效社区论坛的深度解析》 Jforum是一款功能强大的、基于Java的开源论坛软件,其版本2.1.9是它的一个重要里程碑。这款论坛系统以其高度的可定制性、良好的性能以及对多语言支持而受到全球...

    jforum3.0可以运行的源码

    jforum3.0从SVN上导出来的时候缺少jar包,经过不断的测试与添加终于能在myeclipse下面运行啦。可是现在的jforum3.0仍然是beat版本的。有许多BUG。如果不介意的话可以下载回去研究一下哦。我上传的东西没有jar包哦,...

    JForum-2.1.4.rar_JForum-2.1.4_jforum_jsp_jsp struts_struts

    **JForum-2.1.4.rar_JForum-2.1.4_jforum_jsp_jsp_struts_struts** 这个压缩包文件包含了一个基于JSP和Struts框架的论坛系统——JForum的2.1.4版本。JForum是一款开源的、基于Java技术的讨论论坛软件,它提供了强大...

    开源jsp论坛_ jforum 2.1.4源码

    通过研究`JForum 2.1.4`源码,开发者不仅可以掌握JSP的基础知识,还能了解到Web开发中的许多最佳实践,如使用MVC模式、模板引擎、数据库交互等。同时,对于想要自定义论坛功能或开发自己的Web应用的开发者来说,这是...

Global site tag (gtag.js) - Google Analytics