Struts2知识点总结报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.简介

Struts 2是Struts 的下一代产品,是在 struts 1和WebWork 的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork 为核心,采用拦截器的机制来处理用户的请求,

2.Struts2处理流程

3.Struts2基础

可以把struts 配置分为相应的struts.xml 文件

中的属性namespace 可以把action 分包,用来解决不同项目的同名action 中的method 属性决定action 调用action 业务类的那个方法,根据方法的返回值跳到名字队对应的result 结果集中

除了Metnod 调用指定的方法为还有一种动态调用

1.在请求的页面就指定调用的action 名称及方法,语法:actionName!methodName.action,action 可以省略,

2.在使用通配符, ....

其名字可以自行定义,根据业务类返回的值,对应相应的result 官方定义的有success,login,error,input 等其中的type 属性可以决定转向类型,默认的是dispatcher(转发)其他前端控制器 StrutsPreparedAndExec uteFilter 拦截用户请求 用户请求 Action 业务处理,处理请求,返回处理结果 根据请求的url 找到action 返回处理结果 Jsp 页面 渲染结果

结果数据传递给jsp 处理后的html 响应用户

的是redirect,请求重定向的指定的URL,redirectAction重定向到指定的Action,chain:将请求转发到指定的Action,json返回JSON对象

如果result的内容不是一个具体的jsp页面而是${}形式的这就是动态结果的配置,就是结果页面在配置是不能确定,需要在运行时才能确定,比如管理员和普通用户登录,详细的动态结果配置详见资料

Action类实现的方法有三种

1.继承ActionSupport (常用)

2.实现Action接口

3.自己编写方法

Action接收参数

1属性方式接收参数,

2Javabean方式接收参数(常用)

3.moderlDriven方式接收参数

Struts2访问servletAPI的方法

在jsp课程中,服务器保存数据的作用域通常有request,session,application,他们对应的servletAPI 分别是HttpServletRequest,HttpSession,servletContext,同样在struts2控制器(action)中也需要访问这些作用域,有三种方法

1.使用ActionContext类提供的方法

2.以依然注入(IoC)方式访问,实现响应的接口即可

3.使用以耦合方式使用ServletActionContext类访问

OGNL与struts标签

引入的标签指令<%@taglib uri="/struts-tags" prefix="s"%>

理解值栈(存储action属性的地方)和stackcontext(存储request,session的地方)概念,并且使用<s:debug>查看值栈访问的值OGNL访问集合知识点,不常用

字符串转换OGNL表达式用户%{}相反的加’’单引号

Struts2标签

可分为通用标签,控制标签,Ajax标签

通用标签又分为数据标签和控制标签

数据标签:<s:property>

<s:debug>

<s:date>

<s:set>

<s:url>和<s:a>

<s:param>

<s:include>

控制标签

<s:if>,<s:elseif><s:else>

<s:iterator>

UI标签

理解模板与主题,模板用于生成HTML代码,共同风格和观感的模板组织到一起就成了一个主题,内建的主题有simple,xhtml,css_xhtml(默认),css_xhtml,ajax主题的更改用标签属性theme=”simple”

标签:下拉列框和联动列框属性及实现参观相关代码

Ajax标签

Datetimepicker是一个日历控件

导入相应的包引入<%@taglib uri="/struts-dojo-tags" prefix="sx"%>指令

在中添加

添加标签

4.数据校验

数据校验分为客户端验证和服务器端验证,sruts2对服务器端的验证有两种,

1.使用actionsupport编码实现验证

2.使用验证框架实现验证,

使用actionsupport编码进行验证的方法有三种,

1.直接在action类业务方法中验证,

2.重写validate()方法实现验证,

3.使用validateXXX()方法实现验证

验证的关键点在于当用户名或密码没填写时添加addFieldError()方法,此方法处理与字段相关的错误,比如输入的年龄不合理,响应的jsp输出错误的标签是, addActionError()方法是用来添加与action所处理的业务相关的错误信息,在JSP输出错误的标签是

如果两种情况有任何一种错误(hasErrors())就return到INPUT结果集中(事先已经配置好) 使用验证框架

使用特定的配置框架即可,命名的前半部分是action 的名字,可对全局和局部进行验证!具体查看相关资料

5.拦截器

拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略

相关文档
最新文档