第一范文网 - 专业文章范例文档资料分享平台

Struts2笔记

来源:用户分享 时间:2025/6/29 11:54:30 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

(1) struts2框架处理流程

1. 浏览器发送一个请求。

2. 核心控制器FilterDispatcher根据请求决定调用合适的Action。 3. 拦截器(Intercepter)自动对请求应用通用功能,如验证等。

4. 回调Action的execute方法,该execute方法根据请求的参数来执行一定的操作。 5. Action的execute方法处理结果信息将被输出到浏览器中,支持多种形式的视图。

Struts框架就是一个MVC结构的web框架

框架:开发好的模型,结构已经搭建完成,已经经过性能或扩展性等非常好的调试和验证,我们只需要在符合该结构基础上实现具体的业务代码即可。

Struts2体系结构 Struts2的体系与Struts1.X体系的差别非常大,因为Struts2使用了WebWork的设计核心,而不是Struts1的设计核心。 Struts2中大量使用拦截器来处理用户的请求,从而允许用户的业务逻辑控制器与Servlet API分离。

Struts2开发步骤:

1.创建web工程

2.添加Struts2框架所必须的jar包

版本:2.2.3版本:

commons-fileupload-1.2.2.jar commons-io-2.0.1.jar commons-lang-2.5.jar commons-logging-1.1.1.jar freemarker-2.3.16.jar javassist-3.11.0.GA.jar

ognl-3.0.1.jar struts2-core-2.2.3.jar xwork-core-2.2.3.jar

3.配置web.xml文件

struts2

org.apache.struts2.dispatcher.FilterDispatcher

struts2 /* 2.1.6版本之后

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

4.编写LoginAction.java(Struts2的Action) 5.添加并配置Struts2的struts.xml配置文件

6.创建jsp页面

7.部署运行项目进行测试 struts.xml深入配置

Bean配置:

Struts2 框架是一个高度可扩展的框架,框架的核心组件并不是以硬 代码的方式写入代码中,而是通过自己的IOC(控制反转)容器来管 理框架的核心组件。通过配置的方式管理核心组件,那么开发者就可 以很方便的扩展。

struts-default.xml中配置了大量的bean,这些都是框架的核心组件。(对于绝大部分 struts2应用而言,我们无需自己在配置文件中定义Bean) constant常量配置: 在struts.xml中配置常量是一种指定框架属性的一种方式,类似完成在 struts.properties属性文件中配置属性。

属性的配置除了在struts.properties和struts.xml中配置,还可以在

web.xml中配置。方式是在标签中通过标签元素来 配置常量。 struts2 org.apache.struts2.dispatcher

.ng.filter.StrutsPrepareAndExecuteFilter

key value

设置structs2的模式是不是开发模式,这样可以在开发代码的时候,不用重新刷新了。

Struts2在加载配置文件的时候有个顺序: struts-default.xml、struts-plugin.xml、struts.xml、struts.properties、web.xml

注意:如果在多个配置文件中配置了同样的属性,后面的就会覆盖前面的。 推荐:在struts.xml中配置常量或在struts.properties中配置属性方式。

Package包配置 struts2中核心就是拦截器和Action等,框架使用包来管理它们。每个包就是多个Action、多个拦截器、多个拦截器引用的集合。

属性: name: 必填 指定包的名字,是被其他包引用的key extends: 可选 指定该包继承其他包,继承Action和拦截器等。 namespace: 可选 指定该包的命名空间(namespace=\) abstract: 可选 指定该包是否是抽象包,抽象包中不能包含action标签

命名空间的配置(namespace=“/ascent”) 考虑到web应用中可能出现同名的Action,struts2用命名空间来区分, 同一个命名空间中不可以有同名的Action,不同的命名空间中可以有相 同名字的Action。 注意:

当某个包下指定了namespace属性,该包下的所有的Action处理的URL应该是 “命名空间+Action”的name。

如果包没指定namespace属性,那就是默认的命名空间“”。

配置文件包含配置 struts.xml配置文件是Struts2框架的核心配置文件,该文件负责管理框 架的业务控制器Action,在大部分应用中,随着应用规模的增加,系统中

的Action数量会大量增加,导致struts.xml配置文件变的非常臃肿。为了避 免它的庞大、臃肿,提高struts.xml文件的可读性,我们可以将其分解成 多个配置文件,然后在struts.xml中将其他的包含进来。

struts.xml文件中可以通过手动导入一个配置文件

例如

a. Action配置

Action配置 使用通配符(使用通配符配置)

b. 另外一种动态调用一个action类中不同方法的方式

访问的url上使用 “!方法名.后缀” 方式 例如

一个UserAction.java中 有如下方法

execute() add() update() delete() 等方法。

配置在struts.xml中的action名字为 name=userAction 访问url可以使用如下方式访问这个类的不同方法:

url=“userAction.action” 调用UserAction类中的execute()方法 url=“userAction!add.action” 调用UserAction类中的add()方法

url=“userAction!update.action” 调用UserAction类中的update()方法 url=“userAction!delete.action” 调用UserAction类中的delete()方法

Result结果配置(Struts2支持的结果类型)

搜索更多关于: Struts2笔记 的文档
Struts2笔记.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c12tkz6gzeb553972zwso_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top