struts2_day01

1、声明性架构struts2允许使用高级的声明性架构特性描述应用程序的架构组件,而将创建这些组件的任务交给框架;

2、工作流路径:当一个特定的URL被单击的时候会触发哪个动作,以及该动作会选择哪个结果来完成处理流程;

3、声明性架构的两种方式:基于XML的配置文件或者java注解方式;

4、标记哪些类是动作类:一种是让动作类实现Action接口,一种是使用命名约定,所有的动作类命名以Action结尾;

5struts2是一个面向动作的框架,动作是这个框架的核心;

6、动作的作用:

封装工作单元;

为数据转移提供场所;

返回字符串,决定结果的去向;

7、在包上只能设置4个属性:

name(必须):包的名字;

nameSpace:包内所有动作的命名空间;

extends:被继承的父包;

abstract:如果为true,这个包只能用来定义可继承的组件,不能定义动作;

如果不设置命名空间,请求就会进入默认的命名空间,默认命名空间在所有其他命名空间之下,用来解决不能与任何显式声明的命名空间匹配的请求,默认命名空间实际上是空字符串;

8、默认的动作类、方法以及result元素的name属性值:

当我们在配置Action元素时,如果不指定一个类,那么继承struts-default包后,框架会默认为我们提供一个类,类中有一个默认的execute方法,并且会返回一个默认值success,当只是起到一个跳转作用,不做其他业务处理的时候可以使用;

9、继承ActionSupport

这个类实现了Action接口和其他几个默认接口,提供了诸如数据验证、错误消息本地化等功能。

1)基本验证:

ActionSupport类实现了一个validate方法,当我们写的类继承这个类之后要重写validate方法,主要是重写其验证逻辑,在请求到达业务处理层之前,默认的拦截器栈里面有两个拦截器起了作用,params拦截器和workflow拦截器,params拦截器主要是将页面的参数转移到Action对象里面,在这些数据被数据模型接受之前workflow对这些数据进行验证(调用validate方法),如果验证失败我们会添加一条错误信息,注意validate是没有返回值的,当validate方法执行完毕后,控制回到workflow拦截器,然后检查验证逻辑中是否产生了错误信息(ValidationAware接口定义了获取和存储错误信息的方法),如果找到错误信息workflow拦截器会改变请求的工作流,返回“input”,配置下相应的result即可。如果没有则执行业务逻辑。

2)使用资源包处理文本消息:

TextProvider提供了对文件中消息访问的方法,LocalProvider获取用户所在地域;

首先要创建属性文件,并且对照动作类命名;

把文件放在包含java类的包中;

调用getText方法,传入关键字

10、向对象传递数据:

1)域模型

2ModelDriven

11struts2文件上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值