- 浏览: 268773 次
- 来自: ...
文章分类
最新评论
-
zhangxin007:
CXF spring jaxws:endpoint jaxws:server 区别 与 关系 -
kashu1217:
請問一下您的代碼為什麼都貼二次?
struts2 异常处理 -
zhangzhimvp:
alert("1111");
struts 文件下载 -
zhangzhimvp:
引用
[img][/img][url][/url][img] ...
struts 文件下载 -
mousepc:
你好,我想问一下。如果Set集合是在另一个集合中的,没办法初始 ...
Struts2的类型转换器
struts1.1开始支持多模块的.
多模块开发是为了解决团队开发时候的一些不必要的捆扰
一、 配置web.xml 文档
添加模块moduleOne、moduleTwo
<!-- mainModule -->
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<!-- moduleOne -->
<init-param>
<param-name>config/moduleOne</param-name>
<param-value>/WEB-INF/moduleOne/struts-moduleOne.xml</param-value>
</init-param>
<!-- moduleTwo -->
<init-param>
<param-name>config/moduleTwo</param-name>
<param-value>/WEB-INF/moduleTwo/struts-moduleTwo.xml</param-value>
</init-param>
注:<param-name>格式必须这样写,<param-value>是指在WEB-INF目录下新建moduleOne目录再创建struts-moduleOne.xml,struts-moduleOne.xml格式与struts-config.xml相同。在此同时在WebRoot目录下新建moduleOne和moduleTwo的文件夹,用于区分模块和存放页面文件
二、 配置struts-config.xml
<struts-config>
<data-sources />
<form-beans type="org.apache.struts.webapp.CustomFormBean" />
<global-exceptions />
<global-forwards
type="org.apache.struts.webapp.CustomActionForward" />
<action-mappings
type="org.apache.struts.webapp.CustomActionMapping">
<action path="/main" forward="/index.jsp" />
</action-mappings>
<message-resources parameter="com.accp.struts.ApplicationResources" />
</struts-config>注意: type 这三个类是从何而来的呢??答:自定义的
所以在配置 struts-config.xml之前我们应创建它们,当然每个类都必须extenx 相应的父类,如下:
CustomFormBean extenx FormBeanConfig
CustomActionForward extenx ActionForward
CustomActionMapping extenx ActionMapping
这些类里面可以什么都不写,当然比较好点规范就是在里内添加一个属性,如下:
private String example =””;
相应的get()set()
三、 配置子模块
经过上面的配置基本已完成,那么我们现在来配置moduleOne子模块信息,添加action、actionFrom、jsp。
注意:action 必须extends DispatchAction, jsp页面应放在WebRoot目录下moduleOne
struts-moduleOne.xml如下:
<struts-config>
<data-sources />
<form-beans>
<form-bean name="moduleOneForm"
type="com.accp.struts.form.ModuleOneForm">
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards>
<!-- 转发到moduleTwo module指定哪个模块,全局转发 -->
<forward module="/moduleTwo" redirect="true" name="succeed" path="/displayUser.jsp"/>
</global-forwards>
<action-mappings>
<!-- 主模块index.jsp link导航 -->
<action path="/reg" forward="/userRegist.jsp"/>
<action path="/regist" name="moduleOneForm" scope="session" parameter="user"
type="com.accp.struts.action.ModuleOneAction">
</action>
</action-mappings>
<message-resources parameter="com.accp.struts.ApplicationResources" />
</struts-config>
index.jsp 如下:
<html:link module="/moduleOne" action="/reg.do">到moduleOne的用户注册</html:link>
注意:module属性,是指定某个模块,对应的就在某个模块配置<action/>
userRegist.jsp 如下:
<html:form action="/regist?user=addUser">
name : <html:text property="name"/><br/>
sex : <html:text property="sex"/><br/>
age : <html:text property="age"/><br/><br/>
<html:submit value="Submit"/><html:reset value="Reset"/>
</html:form>
注意:user是moduleOne.xml <action parameter="user"……/>因为我们用到了DispatchAction,addUser是指action里的某个方法.
ModuleOneAction.java如下:
public class ModuleOneAction extends DispatchAction {
public ActionForward addUser(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
ModuleOneForm moduleOneForm = (ModuleOneForm) form;
System.out.println("name :"+ moduleOneForm.getName());
System.out.println("age :" + moduleOneForm.getAge());
System.out.println("sex :" + moduleOneForm.getSex());
return mapping.findForward("succeed");}}
displayUser.jsp
<body>
name:${moduleOneForm.name}<br/>
age:${moduleOneForm.age}<br/>
sex:${moduleOneForm.sex}<br/>
<html:link action="/main.do">回到主模块</html:link>
</body>
注意:displayUser.jsp 位于moduleTwo目录,<html:link> 没指定module 所以默认从主模块的struts-config.xml寻找配对的<action>
多模块开发是为了解决团队开发时候的一些不必要的捆扰
一、 配置web.xml 文档
添加模块moduleOne、moduleTwo
<!-- mainModule -->
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<!-- moduleOne -->
<init-param>
<param-name>config/moduleOne</param-name>
<param-value>/WEB-INF/moduleOne/struts-moduleOne.xml</param-value>
</init-param>
<!-- moduleTwo -->
<init-param>
<param-name>config/moduleTwo</param-name>
<param-value>/WEB-INF/moduleTwo/struts-moduleTwo.xml</param-value>
</init-param>
注:<param-name>格式必须这样写,<param-value>是指在WEB-INF目录下新建moduleOne目录再创建struts-moduleOne.xml,struts-moduleOne.xml格式与struts-config.xml相同。在此同时在WebRoot目录下新建moduleOne和moduleTwo的文件夹,用于区分模块和存放页面文件
二、 配置struts-config.xml
<struts-config>
<data-sources />
<form-beans type="org.apache.struts.webapp.CustomFormBean" />
<global-exceptions />
<global-forwards
type="org.apache.struts.webapp.CustomActionForward" />
<action-mappings
type="org.apache.struts.webapp.CustomActionMapping">
<action path="/main" forward="/index.jsp" />
</action-mappings>
<message-resources parameter="com.accp.struts.ApplicationResources" />
</struts-config>注意: type 这三个类是从何而来的呢??答:自定义的
所以在配置 struts-config.xml之前我们应创建它们,当然每个类都必须extenx 相应的父类,如下:
CustomFormBean extenx FormBeanConfig
CustomActionForward extenx ActionForward
CustomActionMapping extenx ActionMapping
这些类里面可以什么都不写,当然比较好点规范就是在里内添加一个属性,如下:
private String example =””;
相应的get()set()
三、 配置子模块
经过上面的配置基本已完成,那么我们现在来配置moduleOne子模块信息,添加action、actionFrom、jsp。
注意:action 必须extends DispatchAction, jsp页面应放在WebRoot目录下moduleOne
struts-moduleOne.xml如下:
<struts-config>
<data-sources />
<form-beans>
<form-bean name="moduleOneForm"
type="com.accp.struts.form.ModuleOneForm">
</form-bean>
</form-beans>
<global-exceptions />
<global-forwards>
<!-- 转发到moduleTwo module指定哪个模块,全局转发 -->
<forward module="/moduleTwo" redirect="true" name="succeed" path="/displayUser.jsp"/>
</global-forwards>
<action-mappings>
<!-- 主模块index.jsp link导航 -->
<action path="/reg" forward="/userRegist.jsp"/>
<action path="/regist" name="moduleOneForm" scope="session" parameter="user"
type="com.accp.struts.action.ModuleOneAction">
</action>
</action-mappings>
<message-resources parameter="com.accp.struts.ApplicationResources" />
</struts-config>
index.jsp 如下:
<html:link module="/moduleOne" action="/reg.do">到moduleOne的用户注册</html:link>
注意:module属性,是指定某个模块,对应的就在某个模块配置<action/>
userRegist.jsp 如下:
<html:form action="/regist?user=addUser">
name : <html:text property="name"/><br/>
sex : <html:text property="sex"/><br/>
age : <html:text property="age"/><br/><br/>
<html:submit value="Submit"/><html:reset value="Reset"/>
</html:form>
注意:user是moduleOne.xml <action parameter="user"……/>因为我们用到了DispatchAction,addUser是指action里的某个方法.
ModuleOneAction.java如下:
public class ModuleOneAction extends DispatchAction {
public ActionForward addUser(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
ModuleOneForm moduleOneForm = (ModuleOneForm) form;
System.out.println("name :"+ moduleOneForm.getName());
System.out.println("age :" + moduleOneForm.getAge());
System.out.println("sex :" + moduleOneForm.getSex());
return mapping.findForward("succeed");}}
displayUser.jsp
<body>
name:${moduleOneForm.name}<br/>
age:${moduleOneForm.age}<br/>
sex:${moduleOneForm.sex}<br/>
<html:link action="/main.do">回到主模块</html:link>
</body>
注意:displayUser.jsp 位于moduleTwo目录,<html:link> 没指定module 所以默认从主模块的struts-config.xml寻找配对的<action>
- strut1.2moudle.rar (1.2 MB)
- 描述: 整个文档中的例子
- 下载次数: 26
发表评论
-
Apache CXF开发Web Service 理解CXF Frontends之Code-First
2013-03-05 17:28 0CXF目前是 apache下面的一个顶级开源项目, C ... -
Hibernate和IBatis对比
2013-03-05 11:11 3238iBATIS数据映射器iBATIS被广泛认为是最简单的一种持 ... -
Hibernate二级缓存详解
2013-03-05 09:53 980Hibernate二级缓存详解 与Session相对的是, ... -
Struts 2 Hibernate Validation Tutorial
2013-03-01 15:40 1678The Hibernator Validator frame ... -
SiteMesh 过滤不装饰的页面
2013-03-01 11:49 6227要实现SiteMesh过滤不装饰页面,需要做两方面的设置1、 ... -
SiteMesh 2.X版本的简单使用
2013-03-01 11:28 1664SiteMesh 2.X版本的简单使用 1. ... -
Hibernate抓取策略以及如何避免cannot simultaneously fetch multiple bags异常
2013-02-28 16:28 1208在说解决cannot simultaneously fetc ... -
Struts2 json 不熟悉序列号 @JSON(serialize=false)
2013-02-26 16:22 1461JSON注释还支持如下几个域:name:指定Action属 ... -
Struts2 json 不熟悉序列号 @JSON(serialize=false)
2013-02-26 16:22 1085避免使用get开头的action方法 在属性get方法上面加 ... -
struts2学习:配置篇之namespace
2013-02-26 11:34 760把namespace单独拉出来讲一方面是因为它实际上不是一个 ... -
Struts2.1.6 部署 jboss6.0 报错
2013-02-21 10:58 9582010-03-01 22:43:52,546 ERROR ... -
MyEclipse反向工程异常解决(转)
2012-09-11 11:28 777http://www.cnblogs.com/zhaozhi- ... -
DynamicMethodInvocation 动态方法调用
2009-07-24 16:06 2148<constant name="struts. ... -
struts2 必须的6个包
2009-07-23 17:42 908commons-logging-1.0.4.jarfr ... -
struts1.2 spring 集成
2008-07-23 14:41 3980转载IBM上一篇文章:http://www.ibm.com/d ... -
struts2 拦截器
2008-07-21 16:43 1683转载于:http://blog.csdn.net/feng_s ... -
struts 文件下载
2008-07-21 15:56 3753最近用到了struts2的文件下载,找了些网上关于下载的文章, ... -
Struts2的类型转换器
2008-07-17 15:25 6007转贴 http://aumy2008.iteye.com/bl ... -
struts2 异常处理
2008-07-17 12:23 8363在学习struts2的过程中,想到了struts1的错误处理机 ... -
struts2 学习拾遗
2008-07-17 10:50 1673学习strut2过程中,碰到一些问题,找了一些文章,转载如下: ...
相关推荐
### Struts多模块开发概述与实践 #### 一、引言 在当今的软件开发领域,多模块开发和软件扩展性已成为评估一个框架优劣的关键指标。尤其对于框架型软件而言,其是否支持多模块开发、是否具备良好的扩展性及与其他...
在Struts多模块配置中,每个模块代表一个独立的功能或者业务领域,它们之间通过定义良好的接口进行通信,降低了模块间的耦合度。以下是一些关键的知识点: 1. **模块化设计**:模块化是软件工程中的最佳实践,通过...
博客链接可能提供了更深入的讲解,包括如何配置和使用Struts2的模块,以及如何利用模块化设计优化项目开发。 通过了解和掌握Struts2的模块化设计,开发者可以更高效地组织和管理代码,降低项目的复杂性,并提高团队...
以下是对Struts模块化开发的详细说明。 在Struts框架中,模块通常指的是ActionServlet配置中的 `<package>` 元素。每个`<package>`都可以看作是一个独立的处理单元,包含了特定业务逻辑的Action类、配置文件以及...
本文将详细介绍如何在Struts1框架中实现多模块开发,并通过多配置文件来管理不同模块的配置信息。 #### 二、多模块架构的优势 1. **清晰的代码结构**:每个模块都有明确的功能边界,便于理解和维护。 2. **易于扩展...
Struts框架从1.1版本开始引入了对多模块开发的支持,使得开发者能够将复杂的应用拆分成更小、更易于管理和测试的部分。 在Struts中,每个模块对应一个独立的`struts-config.xml`配置文件,用于定义该模块的行为、...
在Java开发领域,Struts框架是一个非常经典的MVC(Model-View-Controller)架构,用于构建Web应用...通过深入学习和实践“Java进阶Struts多模块的技巧”,开发者可以更好地掌握Struts框架,提升开发效率和软件质量。
在开发大型复杂系统时,通常会采用多模块架构来提高代码的可维护性和可扩展性。本文将详细介绍如何在Struts框架下实现多模块配置。 在Struts框架中,多模块的实现主要依赖于Action和配置文件的划分。每个模块可以视...
### Struts框架下的多模块开发与扩展 #### 引言 在现代软件工程实践中,多模块开发和软件的可扩展性成为了评估一个框架优劣的关键指标。尤其在Web开发领域,像Struts这样的MVC(Model-View-Controller)框架因其...
Struts2 程序开发实验报告 Struts2 程序开发实验报告是沈阳工学院的一个实验报告,旨在让学生掌握 Struts2 框架的使用和配置方式,以设计和实现一个论坛系统。该实验报告涵盖了 Struts2 的 action、配置方式、拦截...
标题提到的"Struts2注解开发jar"主要指的是`struts2-convention-plugin`,这是一个Struts2的插件,它的主要作用是支持基于约定优于配置(Convention over Configuration)的开发模式。描述中提到的`struts2-...
10. **国际化与本地化**:Struts2支持多语言环境,通过资源文件可以轻松实现应用的国际化和本地化。 11. **插件体系**:Struts2具有丰富的插件系统,如Freemarker插件、Tiles插件、Spring插件等,能够满足各种特定...
Struts1.0学习文档-初学者入门.doc ...Struts模块化编程教程 .doc struts傻瓜式学习(一天篇).doc 实例学习 Struts.doc 样章第02章 第一个Struts应用helloapp应用.doc 用Struts建立MVC应用的介绍.doc
在Struts.xml文件中,你可以为每个模块定义一个或多个Action,每个Action对应一个特定的业务操作。通过配置`<action>`标签,指定Action类、输入输出结果以及异常处理。 2. **包的概念**:在Struts 2中,引入了包...
在本篇文章模块中,我们将深入探讨Struts框架在处理"更多文章"功能时的关键技术和实现方式。 一、Struts框架基础 1.1 Struts概述:Struts是由Apache软件基金会维护的,它的核心是ActionServlet,负责处理HTTP请求,...
这种做法可以实现模块化开发,每个模块有自己的配置文件和消息资源,便于管理和维护。在web.xml中通过`config-file`指定多个Struts配置文件,而消息资源文件则根据需要加载不同的语言包。 6. **实战Struts**: - ...
### 使用 Easy Struts for Eclipse 开发 Struts #### 一、Easy Struts 插件简介与安装配置 **Easy Struts** 是一个针对 Eclipse 的插件,它极大地简化了使用 **Struts** 框架进行 Web 开发的过程。通过 Easy ...