- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验六Struts2开发(二)
实验五 Struts 2开发(二)
【实验目的】:
进一步掌握Struts应用程序开发的步骤
理解拦截器的机制和作用
掌握拦截器的开发、配置和引用。
理解如何使用Struts2框架实现文件上传和下载。
【实验内容】:开发和使用拦截器;利用Struts 2框架实现文件上传。
【实验步骤】:
(一) 拦截器的使用
拦截器是动态拦截Action调用的对象。它提供一种机制,使开发者可以定义一段代码,在Action执行之前或之后被调用执行,也可以在一个Action执行前阻止其执行。同时也提供了一种可以提取Action中可重用部分的方式。
Struts 2设计的灵巧性,很大程度上得益于拦截器设计,拦截器几乎完成了Struts 2框架70%的工作,包括解析请求参数、将请求参数赋值给Action属性、执行数据校验、文件上传等。当需要扩展Struts 2功能时,只需要提供对应拦截器,并将它配置在Struts 2容器中即可,如果不需要该功能,也只需取消该拦截器的配置即可。
Struts 2内建了大量的拦截器,这些拦截器以name-class对的形式配置在struts-default.xml文件中。打开此文件,观察其结构和内容。
simpleInterceptor应用程序的开发步骤
在MyEclipse的workspace中新建Web工程simpleInterceptor。导入Struts2开发需要用到的类库。其目录结构如下:
将Struts 2框架的支持类文件复制到WebRoot/WEB-INF/lib目录下。
创建包org.crazyit.app.action包,其下建立Action类LoginAction。当用户访问login.jsp页面时,如果输入用户名:101031.2 密码:student。LoginAction执行完后将返回SUCCESS视图。 其代码如下:
package org.crazyit.app.action;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction
extends ActionSupport
{
private String username;
private String password;
//username的setter和getter方法
public void setUsername(String username)
{
this.username = username;
}
public String getUsername()
{
return username;
}
//password的setter和getter方法
public void setPassword(String password)
{
this.password = password;
}
public String getPassword()
{
return password;
}
public String execute() throws Exception
{
System.out.println(进入execute方法执行体);
Thread.sleep(1500);
if (getUsername().equals()
getPassword().equals(student) )
{
return SUCCESS;
}
else
{
return ERROR;
}
}
}
创建包erceptor包,其下建立拦截器类SimpleInterceptor。用于拦截LoginAction,计算该Action的开始执行时刻、结束执行时刻和执行时间。其代码如下:
package erceptor;
import com.opensymphony.xwork2.ActionInvocation;
import erceptor.AbstractInterceptor;
import java.util.*;
import org.crazyit.app.action.*;
public class SimpleInterceptor
extends AbstractInterceptor
{
//简单拦截器的名字
private String name;
//为该简单拦截器设置名字的setter方法
public void setName(String name)
{
= name;
}
public String intercept(ActionInvocation invocation)
您可能关注的文档
最近下载
- 基于历史核心素养的学业质量评价——以广东省初中学业水平考试31题为.docx
- Unit 8 Colours 第2课时 Story time(大单元教学设计)三年级英语下册(译林版三起2025).docx VIP
- 2025年中国注射用环磷腺苷项目创业计划书.docx
- 2025年预制菜发展可行性研究报告.docx
- 2023年深圳市高级中学新高一入学分班考试数学模拟试卷及答案解析.pdf VIP
- 天然气工业用户安全培训.pptx VIP
- 2023黑龙江哈尔滨“丁香人才周”(秋季) 事业单位引才招聘巴彦县教师招聘26人笔试备考试题及答案解析.docx VIP
- 交通事故民事起诉状[交通事故起诉状民事].docx VIP
- 交通事故民事起诉状怎么写.pdf VIP
- CJJ1-2008城镇道路工程施工与质量验收规范.docx VIP
文档评论(0)