Struts2应用开发步骤

1 篇文章 0 订阅

MVC:Model组件(用于数据处理)、View视图(响应并生成结果)、Controller控制器-Action(处理用户请求)


1.在web.xml文件中定义核心Filter来拦截用户请求

web应用是基于请求/响应架构的应用,所以不管哪个MVC Web框架,都需要在web.xml中配置该框架的核心Servelt或Filter,这样才可以让该框架介入Web应用中。

2.如果需要以POST方式提交请求,则定义包含表单数据的JSP页面。如果仅仅只是以GET方式发送请求,则无须经过这一步。

3.定义处理用户请求的Action类。

这一步是所有MVC框架中必不可少的,因为这个Action就是MVC中的C,也就是控制器,该控制器负责调用Model里的方法来处理请求。

MVC框架的底层机制是:核心Servlet或Filter接收到用户请求后,通常会对用户请求进行简单预处理,例如解析、封装参数等,然后通过反射来创建Action实例,并调用Action的指定方法(Struts 1通常是execute,Struts 2可以是任意方法)来处理用户请求。这里又产生了一个问题:当Servlet或Filter拦截用户请求后,它如何知道创建哪个Action的实例呢?这有两种解决方案:

² 利用配置文件:例如,可以配置login.action对应使用LoginAction类。这就可以让MVC框架知道创建哪个Action的实例了。

² 利用约定:这种用法可能是受Rails 框架的启发,例如,可以约定xxx.action总是对应XxxAction类。如果核心控制器收到login.action请求后,将会调用LogoinAction类来处理用户请求。

在MVC框架中,控制器实际上由2个部分共同组成,即拦截所有用户请求,处理请求的通用代码都由核心控制器完成,而实际的业务控制(诸如调用Model,返回处理结果等)则由Action处理。

4.配置Action。

对于Java领域的绝大部分MVC框架而言,都非常喜欢使用XML文件来配置管理。配置Action就是指定哪个请求对应用哪个Action进行处理,从而让核心控制器根据该配置来创建合适的Action实例,并调用该Action的业务控制方法。例如,通常需要采用如下代码片段来配置:

<action name="login" class="org.crazyit.app.action.LoginAction">

...

</action>


5.配置处理结果和物理视图资源之间对应关系。

当Action处理用户请求结束后,通常会返回一个处理结果(通常使用简单的字符串就可以了),可以认为该名称是逻辑视图名,这个逻辑视图名需要和指定物理视图资源关联才有价值。所以还需要配置处理结果之间的对应关系。

例如,通过如下代码片段来配置处理结果和物理视图的映射关系。

<action name="login" class=" org.crazyit.app.action.LoginAction ">

<!-- 定义3个逻辑视图和物理资源之间的映射 -->

<result name="input">/login.jsp</result>

<result name="error">/error.jsp</result>

<result name="success">/welcome.jsp</result>

</action>

上面粗体字代码指定了3个处理结果和3个物理视图之间的映射关系,配置片段指定当lee.LoginAction返回input时,实际将进入/login.jsp页面;当返回error时,实际将进入/error.jsp页面;当返回success时,实际将进入/welcome.jsp页面。


6.编写视图资源。

如果Action需要把一些数据传给视图资源,则可以借助于OGNL表达式。

经过上面6个步骤,就可以基本完成一个Struts 2处理流程的开发,也就是可以执行一次完整的请求/响应过程。

 

Struts 2的请求——响应完整流程图 - 无名 - 爪哇咖啡馆


Struts2的默认配置文件名为struts.xml,该文件应该放在Web应用的类加载路径下,通常放在WEB-INF/classes路径下。
struts.xml配置文件最大作用就是配置Action和请求之间的对应关系,并配置逻辑视图名和物理视图资源之间的对应关系。除此之外,struts.xml文件还有额外的功能,例如Bean配置、配置常量、导入其他配置文件等。


Struts2除了可使用struts.xml文件来管理配置之外,还可使用struts.properties文件来管理常量,该文件定义了Struts2框架的大量常量,开发者可以通过改变这些常量来满足应用的需求。struts.properties文件是一个标准的Properties文件,该文件包含了系列的<key-value>对,每个key就是一个Struts2常量,该key对应的value就是一个Struts2常量值。

只要将struts.properties文件放在Web应用的类加载路径下,Struts2框架就可以加载该文件。通常我们将该文件放在Web应用的WEB-INF/classes路径下。


Struts2默认会加载类加载路径下的struts.xml、struts-default.xml、struts-plugin.xml三类文件,其中struts.xml是开发者定义的默认配置文件, struts-default.xml是Struts 2框架自带的配置文件,而struts-plugin.xml则是Struts 2插件的默认配置文件。


Struts 2配置常量总共有3种方式:

通过struts.properties文件。

通过struts.xml配置文件

通过Web应用的web.xml文件。

Struts 2的所有配置文件,包括struts-default.xml、struts-plugin.xml,甚至用户自定义的、只要能被Struts 2加载的配置文件中都可使用常量配置的方式来配置Struts2常量。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的体育馆管理系统,源码+数据库+毕业论文+视频演示 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本体育馆管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此体育馆管理系统利用当下成熟完善的SpringBoot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线选择试题并完成答题,在线查看考核分数。管理员管理收货地址管理、购物车管理、场地管理、场地订单管理、字典管理、赛事管理、赛事收藏管理、赛事评价管理、赛事订单管理、商品管理、商品收藏管理、商品评价管理、商品订单管理、用户管理、管理员管理等功能。体育馆管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 关键词:体育馆管理系统;SpringBoot框架;Mysql;自动化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值