u3-2struts2.0框架授课第1课struts2基础_第1页
u3-2struts2.0框架授课第1课struts2基础_第2页
u3-2struts2.0框架授课第1课struts2基础_第3页
u3-2struts2.0框架授课第1课struts2基础_第4页
u3-2struts2.0框架授课第1课struts2基础_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Struts2基础第三单元 Struts2.0框架课程体系课程体系图学完本门课程后,你能够:掌握Struts2的原理使用Struts2构建Web项目使用Struts2实现数据校验掌握Struts2拦截器使用Struts2实现AJAX本门课程目标课程项目展示租房管理系统任务1:搭建Struts2开发环境任务2:使用Struts2输出“Hello Struts”任务3:简单实现租房管理系统的用户登录任务4:调用添加房屋信息的业务方法本课任务学完本次课程后,你能够:掌握搭建Struts2开发环境掌握创建Action掌握Action接收参数的方式掌握Action方法的调用本课目标搭建开发环境 Stru

2、ts2是基于MVC的Web应用框架Struts2=Struts1的知名度和市场+WebWork的技术实现MVC模式,结构清晰丰富的标签(tag)通过配置文件页面导航,便于后期维护与Servlet API松耦合,便于测试 演示示例:搭建Struts2开发环境Struts2获取 Struts-2.3.16.3-all.zipStruts2主要目录小结2-1apps :该文件夹下包含了基于Struts2的示例应用docs:该文件夹下包含了Struts2的相关文档,包括Struts2的快速入门、Struts2的文档以及API文档等内容lib :该文件夹下包含了Struts2框架的核心类库,以及Stru

3、ts2的第三方插件类库src :该文件夹下包含了Struts2框架的全部源代码Struts2搭建所需jar包小结2-2commons-fileupload-1.3.1.jar:Struts文件的上传和下载commons-io-2.2.jar:文件读取commons-lang3-3.1.jar:为java.lang包提供扩展freemarker-2.3.19.jar:FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具ognl-3.0.6.jar:支持ognl表达式javassist-3.11.0.GA.jar:分析、编辑和创建JAVA字节码的类库struts2-core-2.

4、3.16.3.jar:Struts2的核心包xwork-core-2.3.16.3.jar:xwork的核心包asm-*.jar 类似javassitslog4j-1.2.17.jar 日志类库课堂练习需求说明解压Struts-2.3.16.2-all.zip,并使用其中的示例项目资源,搭建Struts2环境实现思路创建Web项目,引入Struts2项目所需jar包修改web.xml配置struts.xml完成时间:10分钟共性问题集中讲解需求说明使用Struts2输出“Hello Struts”第一个Struts2应用演示 演示示例:使用Struts 2输出”Hello Struts”课堂练

5、习需求说明使用Struts2输出“Hello Struts”实现思路修改struts.xml配置以及创建helloStruts.jsp页面完成时间:10分钟共性问题集中讲解Struts2流程分析web.xmlstruts.xml创建Action普通的Java类,编写public String execute()方法实现Action接口,重写execute()方法继承ActionSupport类,重写execute()方法创建Action需求说明使用Struts2的Action输出“Hello Struts”实现思路三种方式创建Action类修改struts.xml的添加class属性升级第一个

6、Struts2应用演示 演示示例:使用Action输出”Hello Struts”Struts2流程再分析web.xmlstruts.xml 演示示例:查看action的默认class值课堂练习需求说明创建Struts2的Action输出“Hello Struts”实现思路继承ActionSupport类,实现execute()方法修改struts.xml的添加class属性完成时间:10分钟共性问题集中讲解Struts2基于MVC的Web应用框架将请求和展现分开Struts2与MVCM(模型层)应用程序的业务逻辑和业务数据V(视图层)应用程序的输出页面或者界面比如:JSP、HTMLC(控制层

7、)协调模型和视图比如:ServletStruts2基于MVC的Web应用框架将请求和展现分开Struts2与MVCM(模型层)应用程序的业务逻辑和业务数据V(视图层)应用程序的输出页面或者界面比如:JSP、HTMLC(控制层)核心控制器:StrutsPrepareAndExecuteFilter业务控制器:ActionAction能做什么控制业务逻辑如果业务逻辑很复杂,可以把业务逻辑构建为业务类,在Action中调用业务类返回结果字符串方便的处理数据比如:Action中以属性方式接收用户数据Action作用需求说明以Action中定义属性的方式接收用户登录信息,简单实现租房管理系统的用户登录功

8、能,并在登录成功页面显示用户相关信息简单实现登录功能演示 演示示例:属性方式获得用户数据Action接收参数(属性方式)控制业务逻辑表单参数名称必须在Action中有对应的setter以及getter解决乱码修改struts.xml,添加代码页面显示应用场景接收的参数字段个数少的时候适合使用,比如对于搜索应用,接收用户输入的搜索条件Action接收参数方式一Action接收参数(JavaBean方式):将模型数据从Action中分离了出来定义实体类,为实体添加属性以及setter和gettercom.pb.entity.User为Action添加实体属性以及setter和getterUser

9、user修改表单参数name为实体对象名.属性名取值通过的形式Action接收参数方式二 演示示例:JavaBean方式获得用户数据需求说明在Action中分别以属性方式和JavaBean方式接收用户登录信息,简单实现租房管理系统的用户登录功能,并在登录成功页面显示用户相关信息课堂练习完成时间:15分钟共性问题集中讲解Action接收参数的方式属性方式JavaBean方式ModelDriven方式Action中对应表单参数的属性及对应的setter、getter为Action添加实体属性以及setter和getterAction实现ModelDriven接口,重写方法getModel(); A

10、ction中要提供JavaBean类型的属性,需要实例化,但不需要相应的setter和getter方法页面中(1)Form中元素name取值属性名(2)取值:(1)Form中元素name取值对象名.属性名(2)取值:(1)Form中元素name取值属性名(2)取值:应用场景接收的参数字段个数少字段多,可以封装为一个对象;将模型数据从Action中分离出来时和JavaBean方式相似,不常用用常用常访问Action时,默认调用的是execute()方法使用method属性public class HouseAction extends ActionSupport public String ex

11、ecute ( ) return success; 访问Action时,默认调用的是execute()方法可以在Action中定义多个业务方法方法签名要与execute( )方法相同使用method属性public class HouseAction extends ActionSupport public String add() return success; public String update() return success; 访问Action时,默认调用的是execute()方法可以在Action中定义多个业务方法方法签名要与execute( )方法相同配置多个标签method

12、属性指定调用的方法使用method属性public class HouseAction extends ActionSupport public String add() return success; public String update() return success; 演示示例:使用method属性配置Action动态方法调用DMI(dynamic method invocation)一个Action类中可以有多个业务方法只需要配置一个标签不需要使用method属性调用时指出Action名和业务方法使用动态方法调用public class HouseAction extends A

13、ctionSupport public String add() return success; public String update() return success; 动态方法调用DMI(dynamic method invocation)一个Action类中可以有多个业务方法只需要配置一个标签不需要使用method属性调用时指出Action名和业务方法使用动态方法调用 演示示例:动态方法调用根据Action业务方法的返回值跳转到不同的结果视图的name属性 public String add() throws Exception return addSuccess;public String update() throws Exception return updateSuccess; /houseAddSuccess.jsp /houseUpdateSuccess.jsp 需求说明使用动态方法调用添加房屋

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论