欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Struts基础开发.ppt

    • 资源ID:6521459       资源大小:505KB        全文页数:30页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Struts基础开发.ppt

    第12章,Struts2 基础开发,本课教学内容,Struts2简介Struts2的基本原理Struts2的基本使用方法其他问题,Struts2 简介,大多数框架的版本改进,一般是在原有的基础上增加功能或者进行优化,但是,Struts2和 Struts1 相比,不简单是这样,无论从流程还是结构上,都有很多革命性的改进,Struts2 简介,Struts2 并不是新发布的新框架,而是在另一个非常流行的框架:WebWork 基础上发展起来的。因此,可以说,Struts2 并没有继承 Struts1 的特点,反而和 WebWork 非常类似;换句话说,Struts2 是衍生自 WebWork,而不是 Struts1。正是由于这个原因,Struts2 吸引了众多的 WebWork 开发人员来进行使用。并且由于 Struts2 是 WebWork 的升级,在各种 功能和性能方面都有很好的保证,吸收了 Struts1 和 WebWork 两者的优势,因此也是一个非常优秀的框架,Struts2 简介,Struts2 和 Struts1 具有一些不同点,主要集中在以下方面:Action 类的编写:在 Struts1 中,Action 类一般继承基类 org.apache.struts.action.Action。而在 Struts2 中,Action 类可以实现一个 Action 接口,也可实现其他接口,也可以继承 ActionSupport 基类,甚至不需要实现任何接口,只编写 execute 函数即可,Struts2 简介,Action 的运行模式:Struts1 中,Action 是单态的,系统实例化一个对象来处理多个请求,为每个请求分配一 个线程,在该线程中运行 execute 函数。因此,在开发时需要特别小心,Action 资源必须是线程安全的或同步的。但是,Struts2 中,Action 为每一个请求产生一个实例,不会产生线程安全问题。但是,系统又能够及时回收垃圾资源,不会有废弃空间的问题,Struts2 简介,对 Web 容器的依赖:Struts1 中,Action 的 execute 函数内,传入了 Servlet API:HttpServletRequest 和HttpServletResponse,使得测试必须依赖于 Web 容器。但是,在 Struts2 中,可以不传入 HttpServletRequest 和 HttpServletResponse,但是也可以访问它们,因此,Action 不依赖于容器,允许 Action 脱离容器单独被测试,Struts2 简介,对表单数据的封装:Struts1 中,使 用 ActionForm 来 封 装 表 单 数 据,所 有 的 ActionForm 必 须 继 承 org.apache.strtus.action.ActionForm,有可能造成 ActionForm 类和 VO 类重复编码。但是,Struts2中,直接在 Action 中编写表单数据相对应的属性,可以不用编写 ActionForm,而这些属 性又可以通过 Web 页面上的标签访问,Struts2 的基本原理,环境配置 要编写基于Struts2 的应用,需要导入一些支持的包,也就是Struts2 开发包。这些开发包可以到网上去下载。下载地址为:,Struts2 的基本原理,在 Struts2 中,常用的的组件有:FilterDispatcher 过滤器、JSP、Action、JavaBean、配置文件等。对于一个动作,其执行步骤为:用户输入,JSP 表单的请求被 FilterDispatcher 截获,Struts2 的基本原理,FilterDispatcher 将表单信息转交给 Action,并封装在 Action 内Action 来调用 JavaBean(DAO)Action 返回要跳转到的 JSP 页面逻辑名称给框架框架根据逻辑名称找到相应的网页地址,进行跳转,结果在 JSP 上显示,Struts2 的基本使用方法,导入 Struts2 将如下的几个包拷贝到项目中 WEB-INF 中的 lib 目录下:,编写 JSP,*具体代码示例详见课本,编写并配置 ActionForm,在 Struts1.x 中,必须要单独建立一个 ActionForm 类,而在 Struts2 中 ActionForm和 Action 已经合二为一了。因此,只需要将和表单元素同名的属性编写到 Action 内。Action只是一个普通的类。在包 prj12 内新建一个类:LoginAction.java,编写并配置 ActionForm,LoginAction 没有继承任何类,它有属性 account 和 password,与login.jsp 中的表单元素 account 与 password 必须同名,编写并配置 Action,Struts2 中,既然 Action 和 ActionForm 合二为一,Action 是负责业务逻辑的,所以必须 编写业务逻辑代码。下面来加强 Action 的功能。要能够处理业务逻辑,必须要满足一个规范,那就是:编写 execute 方法来处理业务逻辑。注意,不是重写,是编写。并且该方法不需要有任何的参数,编写并配置 Action,编写 execute 方法,是因为 Action 接收数据后,由框架自动调用它的 execute 方法,该方法的运行,在底层通过反射机制进行。execute 的格式为:public String execute()该函数返回一个字符串,表示的是目标页面的虚拟名称,编写并配置 Action,配置文件/loginSuccess.jsp/loginFail.jsp,编写并配置 Action,从以上配置可以看出,在标签中可以有多个,名称任意,但不要重名;extends 属性表示继承一个默认的配置文件struts-default,一般都继承于它,可以不用修改。标签中的 name 属性表示 Action 被提交时的路径,class 指定动作类路径,测试,*具体代码测试效果图见课本,其他问题,程序运行流程 login.jsp 中 的 表 单 提 交 到 的 地 址 为/Prj12/login.action,被 org.apache.struts2.dispatcher.FilterDispatcher 截获,框架把提交的地址的项目名称和扩展名.action去掉,变为/login,读取配置文件,其他问题,在配置文件中,根据/login,找到配置文件中的 action 对应的类,从而得到要提交到的类 LoginAction;在 LoginAction 中,实例化对象,将 account 和 password 封装进去,其他问题,框架调用 LoginAction 的 execute 方法,处理后返回一个字符串框架根据字符串内容,在配置文件中找到相应的页面,并跳转,其他问题,Action 生命周期框架先实例化 LoginAction 对象,然后调用 LoginAction 的 setAccount 函数,封装表单数据,然后调用 execute 函数,进行处理在第二次提交时,LoginAction 会重新实例化,说明每一个 LoginAction 对象都服务一个请求,这和 Servlet 的原理是不一样的,其他问题,在 Action 中访问 Web 对象 获得 request 对象的方法是:import org.apache.struts2.ServletActionContext;public String execute()throws Exception HttpServletRequest request=ServletActionContext.getRequest();/使用 request,其他问题,在 Action 中访问 Web 对象 获得 response 对象的方法是:import org.apache.struts2.ServletActionContext;public String execute()throws Exception HttpServletResponse response=ServletActionContext.getResponse();/使用 response,其他问题,在 Action 中访问 Web 对象 获得 application 对象的方法是:import org.apache.struts2.ServletActionContext;public String execute()throws Exception ServletContext application=ServletActionContext.getServletContext();/使用 application,其他问题,在 Action 中访问 Web 对象 获得 session 对象的方法是:import com.opensymphony.xwork2.ActionContext;public String execute()throws Exception Map session=ActionContext.getContext().getSession();/使用 session,其他问题,可以发现这里的 session 是个 Map 对象。在 Struts2 中,底层的 session 被封装成了 Map类型,我们可以直接操作这个 map 进行对 session 的写入和读取操作,而不用去直接操作HttpSession 对象,本章结束,本章总结 Struts2 的基本思想 Struts2 的结构和基本使用 Struts2 下用例的开发方法上机习题,

    注意事项

    本文(Struts基础开发.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开