`
bjxagu
  • 浏览: 165301 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Struts的多模块设计

阅读更多

Struts在1.1以后的版本引入了模块(Module)的概念,克服了1.0的并行开发所遇到的问题。但是模板的规划往往又是比较麻烦,如果不注意,可能适得其反,影响你的开发速度。下面我们看看如何去规划一个对模块的Struts项目。

首先我们需要建立一个web的项目,接下来就要进行目录规划。如下图:
 

 

1 首先确定项目的模块,如此项目中包含两个模块:mFirst和mSecond,当然还有缺省模板。

2 本例子中考虑到使用XDoclet自动生成Struts配置和校验文件,所以有些特殊性。在WEB-INF下建立两个目录mFirst和mSecond,用于模块配置文件的存放。同时建立merge目录,并包含相应的模块目录,主要存放XDoclet生成Struts配置文件所需要的合并文件。模板的java源码和测试代码也分别存放,这样便于管理。为了包含某些不允许从浏览器端直接访问的jsp文件,我们在WEB-INF下同时建立webpages目录,该目录下同时包含模块目录,主要存放各个模块的受限文件。

3 本例中为了集成方便,所有编译后的代码均存在同一目录下(WEB-INF\classes),编译后的测试代码同样存在同一目录下。

4 经过以上的设置,为XDoclet生成配置文件提供了方便,我们的原则是同一个模块只有一个配置文件(struts-config.xml)和校验文件(validation.xml)。

 

 

5 接下来我们只需在web.xml中进行模块声明即可,其他信息请参考struts的sample。

<init-param>

<param-name>config</param-name>

<param-value>WEB-INF/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>config/mFirst</param-name>

<param-value>WEB-INF/mFirst/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>config/mSecond</param-name>

<param-value>WEB-INF/mSecond/struts-config.xml</param-value>

</init-param>

6 完成这些信息以后,我们要注意一些事情:

struts-config.xml文件中的Controller声明,由于我们将模板的jsp文件隐藏到WEB-INF目录下,而不是在根目录下直接建立模板目录,所以必须设置forwardPattern,详细信息请参考Struts文档。请在每个模块的struts-config.xml文件中添加以下代码,在本例中为:

<controller forwardPattern=”/WEB-INF/webpages/$M$P”/>

在每个模块的properties资源文件中可能都有配置Struts默认的出错信息,因为这些模块都是独立的。

7 接下来就是模块的之间的切换问题,因为在现时过程必须需要解决的问题。其实很简单,如果你想使用项目下绝对路径(包含模块目录信息),只需将forward的contextRelative属性值设置为true即可,这样模块之间切换也很容易实现。

<forward contextRelative=”true” name=”success”

path=”/mSecond/second.do” redirect=”false”/>

8 接下来就是你的代码啦,可能你要在编码中适当地考虑到项目模块之间的关系。

总结:多模块设计不太难,但是你也的考虑周全点,这样会给你的开发带来方便。在IntelliJ IDEA下,虽然在模块比较多的情况下目录很乱,通过设置excluded,让你的目录更整洁,这样就可以关注你的模块。在有些情况下,取消excluded,这样你有可以把握项目全局。

  • 大小: 8.3 KB
分享到:
评论

相关推荐

    struts2 模块包含

    在Struts2中,模块化设计是其核心特性之一,它使得开发者可以将应用程序拆分成独立的功能单元,每个单元称为一个模块。这样做有助于提高代码的复用性和可测试性,同时简化了大型项目的开发和管理。 标题“Struts2 ...

    struts多模块配制

    1. **模块化设计**:模块化是软件工程中的最佳实践,通过将大项目分解为多个小模块,可以更好地组织代码,便于团队协作,每个模块负责特定的业务逻辑,便于维护和测试。 2. **Struts配置文件**:每个模块通常有自己...

    struts多模块.pdf

    ### Struts多模块开发概述与实践 #### 一、引言 在当今的软件开发领域,多模块开发和软件扩展性已成为评估一个框架优劣的关键指标。尤其对于框架型软件而言,其是否支持多模块开发、是否具备良好的扩展性及与其他...

    Java进阶Struts多模块的技巧.rar

    Struts框架的多模块设计是其一大特色,它有助于将复杂的项目拆分成多个可管理的小模块,提高代码的可维护性和可扩展性。本资料“Java进阶Struts多模块的技巧”旨在帮助开发者掌握如何有效地组织和管理Struts2框架中...

    struts1多模块多配置文件

    通过上述步骤,我们可以有效地在Struts1框架中实现多模块多配置文件的设计。这种方式不仅提高了项目的可维护性和可扩展性,还使得代码结构更加清晰,有助于团队协作。对于大型项目来说,这是一种非常实用且高效的...

    struts2 课程设计

    总结起来,"struts2 课程设计"涉及到Web开发中的多个核心概念和技术,包括Struts2框架的Action和拦截器,Ajax的前后端通信,以及Hibernate的数据库操作。通过实际项目实践,你可以深入理解这些技术的运用,提升自己...

    struts多模块

    本文将详细介绍如何在Struts框架下实现多模块配置。 在Struts框架中,多模块的实现主要依赖于Action和配置文件的划分。每个模块可以视为一个独立的功能单元,拥有自己的Action类和对应的配置文件。下面我们将深入...

    BBS struts1.2课程设计项目

    **Struts1.2 BBS课程设计项目详解** 在IT行业中,Struts1.2是一个经典的MVC(Model-View-Controller)框架,它在Java Web开发领域有着广泛的应用。本项目以“BBS(Bulletin Board System,电子公告板)”为主题,...

    struts 实现模块化

    在Struts.xml文件中,你可以为每个模块定义一个或多个Action,每个Action对应一个特定的业务操作。通过配置`&lt;action&gt;`标签,指定Action类、输入输出结果以及异常处理。 2. **包的概念**:在Struts 2中,引入了包...

    Struts更多文章模块

    在本篇文章模块中,我们将深入探讨Struts框架在处理"更多文章"功能时的关键技术和实现方式。 一、Struts框架基础 1.1 Struts概述:Struts是由Apache软件基金会维护的,它的核心是ActionServlet,负责处理HTTP请求,...

    Struts2 技术内幕-深入解析Struts2架构设计与实现原理

    Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、模块化和高度结构化的Web应用程序。这个框架是基于MVC(Model-View-Controller)设计模式的,旨在简化开发过程并提供更好的控制流。《Struts2技术...

    struts2登录注册简单实现

    总的来说,这个“struts2登录注册简单实现”项目涵盖了Struts2框架的基础应用,包括Action的创建、配置文件的编写、视图设计、数据处理以及安全性考虑等多个方面。通过实践,开发者能更深入地理解Struts2的架构和...

    javaWeb学生公寓管理系统struts2 毕业设计 外加设计思路 文档

    JavaWeb学生公寓管理系统基于Struts2的毕业设计项目是一个典型的Web应用开发实例,它涵盖了Java后端编程、数据库设计以及MVC框架的应用等多个关键知识点。下面将详细解析这个项目的相关技术点。 1. **Struts2框架**...

    Spring整合Struts

    ContextLoaderPlugin是Spring为Struts设计的一个插件,它能够加载一个Spring配置文件,该文件指向由ContextLoaderListener加载的根WebApplicationContext作为其父上下文。默认情况下,配置文件的名称是映射的servlet...

    Struts课程模块测试.doc

    在本“Struts课程模块测试”中,学生需要利用MyEclipse开发工具来实现一个基于Struts的Web项目,其核心功能是判断一个字符串是否为另一个字符串的前缀。 首先,创建一个新的Web项目“Prefix”,这是开发的基础。在...

    Struts2 技术内幕——深入解析Struts2架构设计与实现原理

    - **模块化设计**:将应用划分为多个逻辑上独立的模块,每个模块都可以独立部署。 - **使用Spring进行依赖注入**:Spring框架可以很好地与Struts2集成,通过Spring进行依赖注入可以提高代码的可维护性和可测试性。 -...

    Struts Login 登陆模块

    通过学习和实践这个Struts Login模块,你可以掌握Struts的基本架构、请求处理流程、数据校验、视图渲染等核心概念,为后续深入学习和使用Struts框架打下坚实的基础。同时,这个过程也会帮助你理解MVC模式在实际项目...

    网上书店 struts JSP 毕业设计

    网上书店的毕业设计项目通常是为了让学生实践Web应用开发技能,特别是使用Struts和JSP技术。这个项目旨在帮助开发者理解MVC(Model-View-Controller)设计模式在实际中的应用,以及如何通过JSP和Struts框架来实现...

    Struts2 技术内幕——深入解析Struts2架构设计.pdf.zip

    Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、模块化且易于管理的Web应用。这个框架是基于MVC(Model-View-Controller)设计模式的,旨在简化开发过程并提供一种统一的方式来处理HTTP请求。...

Global site tag (gtag.js) - Google Analytics