struts2框架的核心模块有?_struts2框架的处理流程

struts2框架的核心模块有?_struts2框架的处理流程Struts1框架Struts是第一个真正的MVC模式的web开发框架,拥有大量的客户群,市场占有率最高,但是随着Web技术发展,Struts1的缺陷慢慢暴漏出来,也涌现出了很多具有新的设计理念的Web开发框架,如:WebWork,Spring MVC等。Struts1的主要缺陷:讨厌的A

Struts1框架

Struts是第一个真正的MVC模式的web开发框架,拥有大量的客户群,市场占有率最高,但是随着Web技术发展,Struts1的缺陷慢慢暴漏出来,也涌现出了很多具有新的设计理念的Web开发框架,如:WebWork,Spring MVC等。

Struts1的主要缺陷:

  1. 讨厌的ActionForm

    Struts为表现层的技术,为了接收表单数据,需要做一个ActionForm类,但是它依赖于struts,一般还会编写一个和ActionForm类属性相同的JavaBean类,进行下层的数据传递。

  2. 困难的单测试

    其Action类和ServletAPI耦合在一起,Action的单测试依赖于Web容器,难以进行单测试

Struts2框架诞生

2006年两个开发团队决定共同开发整合struts和WebWork的全新MVC框架,命名为“Struts2”, 继承了WebWork的血统,其实就是WebWork2.3.利用Struts 1的人气加上WebWork的设计架构, Struts2必将成为最为流行的Web开发框架之一。

struts2框架的核心模块有?_struts2框架的处理流程

Struts2 环境搭建步骤

一、创建应用目录,并拷贝struts相应jar包到/WEB-INF/lib下

必须添加的Jar包:

commons-logging.jar 日志包 ,支持Log4J和JDK1.4+的日志记录;freemarker.jar UI标签模板使用该包来编写的;ognl.jar 对象图导航语言(Object Graph Navigation Language)通过该语言读取对象属性;struts2-core.jar 核心包 ;xwork.jar xwork所依赖的核心包,struts2在其基础上构建的 ;commons-fileupload.jar文件上传组件

二、配置web.xml文件加入struts2 MVC框架启动配置
StrutsPrepareAndExecuteFilter 

1http://www.toutiao.com/a/*
StrutsPrepareAndExecuteFilter在init()方法中读取struts.xml配置文件,完成初始化工作

2.url-pattern如果配置为*.action则jsp中使用struts标签会有问题,需要再配置一个url-pattern为*.jsp

struts2框架的核心模块有?_struts2框架的处理流程
三、配置
/WEB-INF/classes/struts.xml文件

Struts2默认的配置文件为struts.xml ,该文件需要存放在WEB-INF/classes下,下图是一个对HelloWorld配置。

struts2框架的核心模块有?_struts2框架的处理流程

package:管理一组功能相关的Action,将action分成逻辑上的不同模块,每一个模块有自己独立的前缀,可以有效的避免action重名的冲突。

name属:唯一的任意名,和java类包不对应,如果其它包继承自该包,则需引用该属性

namespace属性:定义该包的命名空间,作为该包下的Action的路径的一部分,如访问上面的Action,访问路径为:/test/helloworld.action。如果不配置默认的命名空间为“” 。

extends:继承自struts-default包,大部分核心功能都在struts-default.xml中进行了定义,比如各种拦截器:文件上传、数据验证、数据注入到action等及各种Result类型。 struts-default.xml也是Struts2默认配置文件。 Struts2每次都会自动加载 struts-default.xml文件。

四、设计Action

定义的action可以继承也可以不继承ActionSupport类。但是继承自ActionSupport有以下几个好处:实际继承ActionSupport之后 就等同于实现了很多接口,例如:Action,Validateable,ValidationAWare,TextProvider,LoacalProvider,Serializable ,还可以使用struts预设的返回字符串,如SUCCESS,INPUT等。也可以重写方法,更方便的实现表单验证、国际化等功能。

struts2框架的核心模块有?_struts2框架的处理流程

Action配置中的各项默认值:

1如果没有指定class,默认是ActionSupport。

2如果没有指定method,默认执行action中的execute() 方法。如果指定了method,则执行相应的方法

3如果没有指定result的name属性,默认值为success。

struts2框架的核心模块有?_struts2框架的处理流程

五、设计jsp

struts2框架的核心模块有?_struts2框架的处理流程

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/17013.html

(0)
上一篇 2024年 9月 17日
下一篇 2024年 9月 17日

相关推荐

关注微信