1 / 32

JavaEE 应用开发

JavaEE 应用开发. 目录. 第一次课. 项目一:搭建开发环境. 项目二:聊天答疑室程序设计. 项目三:基于 Model1 模式的在线答疑系统. 项目四:基于 Model2 模式的在线答疑系统. 项目五:基于 Struts 框架的在线答疑系统. 项目六:基于 Struts 和 Hibernate 的在线答疑系统. 项目七:基于 Ajax 的聊天答疑室程序设计. 项目说明. 基于 Model2 模式的在线答疑系统. 复习上节课内容 MVC 设计模式 Struts 体系结构 Struts 工作流程 Struts 应用.

garima
Download Presentation

JavaEE 应用开发

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JavaEE应用开发

  2. 目录 第一次课 项目一:搭建开发环境 项目二:聊天答疑室程序设计 项目三:基于Model1模式的在线答疑系统 项目四:基于Model2模式的在线答疑系统 项目五:基于Struts框架的在线答疑系统 项目六:基于Struts和Hibernate的在线答疑系统 项目七:基于Ajax的聊天答疑室程序设计

  3. 项目说明

  4. 基于Model2模式的在线答疑系统 • 复习上节课内容 • MVC设计模式 • Struts体系结构 • Struts工作流程 • Struts应用

  5. Model2 Web开发模型(MVC) 复习上节课内容 • Model2开发模式

  6. 复习上节课内容 • Servlet的开发、配置和使用 • 开发 • 配置(Web.xml) • 使用

  7. 一、MVC设计模式 • MVC • 模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑. • 视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。 • 控制器(Controller)控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。

  8. 一、MVC设计模式

  9. 二、JAVA Web开发框架 主要开发框架分布图 选用主流的开发框架

  10. 二、JAVA Web开发框架 能力递增 Spring+Struts+Hibernate开发 SSH 高级 Hibernate Struts+Hibernate开发 中级 Struts Struts开发 Servlet JSP+JavaBean+Servlet开发 JSP+JavaBean开发 JavaBean 初级 语法、指令、内置对象 JSP JDK、TomCat、MyEclipse 开发环境搭建

  11. 二、JAVA Web开发框架 • 框架的作用 • 可重用 • 易于扩展和控制 • 能提高开发效率

  12. 三、Struts框架结构

  13. 四、Struts工作流程

  14. 五、Struts1实战 • 用户登录程序 • JBuilder和MyEclipse中的Struts Web开发 • 通过简单案例掌握 • Struts框架体系结构 • Struts工作流程 • Struts开发过程

  15. 五、Struts1实战 • 创建Web工程 • 新建登录页面 • 编写ActionForm • 编写Action • 配置Struts-configer.xml • 部署运行

  16. 五、Struts1实战 • Action映射配置说明 • Path:指定请求访问Action的路径 • Type:指定Action类的完整路径 • Name:指定需要传递给Action的ActionForm Bean • Scope:指定ActionForm Bean的存放范围 • Validate:指定是否执行表单验证 • Input:指定表单验证失败的转发路径

  17. 六、Struts2 • 基于Struts2的用户登录程序 • 环境配置 • 编辑登录JSP页面 • 配置web.xml • 开发Action • 配置struts.xml • 编辑信息显示JSP页面 • 部署运行

  18. 六、Struts2 • 注意 • 在一个Action类中不一定只能有execute()方法,如果需要调用Action类中的其他方法,需要在action中配置method属性。

  19. 七、Struts数据验证 • Struts数据验证及验证框架 • Struts1中的数据验证 • ActionForm的validate()方法,返回ActionErrors • Struts2中的数据验证 • 编写Action类的validate()方法 • Struts2验证框架

  20. 七、Struts数据验证 • Struts2验证框架 • 必填字符串校验器:requiredstring • 必填校验器:required • 整数校验器:int • 日期校验器:date • 邮件地址校验器:email • 网址校验器:url • 字符串长度校验器:stringlength • 正则表达式校验器:regex

  21. 七、Struts2数据验证 • 校验规则定义文件 • 命名:AciontName-validation.xml • ActionName:用户自定义的Action类的类名 • 存放路径:与Action类文件同一路径 • 若Action类中有多个方法,在struts.xml中有多个action配置,要验证其中一个方法,则命名为:ActionName-name-validation.xml,其中name为action配置中的name

  22. 八、JSP中的表达式语言 • 表达式语言(EL,Expression Language) • 作用:用于JSP中的数据访问 • 关键字:and、eq、gt、true、or、not等 • 变量:例 ${username}、${student.name},一次在page、request、session、application中查询属性 • 运算符:empty 检查是否为空,其他 • 隐含对象:pageContext、param、requestScope、sessionScope等

  23. 八、JSP中的表达式语言 • 表达式语言的使用 • 基本语法案例 • 读取表单数据 • 函数

  24. 九、JSTL • JSTL(JSP Standard Tag Library) • 常用标签 • <c:out> 、<c:set>、<c:remove>、<c:catch> • 条件标签 • <c:if>、<c:choose>、<c:when>、<c:otherwise> • 迭代标签 • <c:forEach>、<c:forTokens> • URL标签 • <c:url>、<c:import>、<c:redirect>

  25. 九、JSTL • SQL标签库 • 设置数据源<sql:setDataSource> • 查询数据库<sql:query> • <sql:param>、<sql:dateParam> • 修改数据库 • <sql:update>、<sql:transaction>q • 使用标签 • <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

  26. 十、Struts2标签库 • Struts2的OGNL表达式 • OGNL表达式 • OGNL:Object Graphic Navigation Language • Struts2默认的表达式语言(EL) • #request.username或#request[“username”]相当于request.getAttribute(“username”) • OGNL集合操作 • {e1,e2,e3…} List • #{key1:value1,key2:value2,…} Map

  27. 十、Struts2标签库 • 数据标签 • <s:property>标签,输出指定值 • <s:property value=“#request.username”/> • <s:set>标签,定义新变量 • <s:property value=“#session[‘stu’].name”/> • <s:set name=“stu” value=“#session[‘stu’]”/> • <s:property value=“#stu.name”/> • <s:param>标签,设置参数 • <s:param name=“stu”>stu1</s:param> • <s:param name=“stu“ value=“stu1”/> • <s:param name=“sname” value=“’Tom’”/>

  28. 十、Struts2标签库 • 数据标签 • <s:bean>标签 • <s:action>标签 • <s:date>标签 • <s:include>标签 • 控制标签 • 表单标签

  29. 十一、过滤器和拦截器 1、拦截器是基于java反射机制的,而过滤器是基于函数回调的。 2、过滤器依赖与servlet容器,而拦截器不依赖与servlet容器。 3、拦截器只能对Action请求起作用,而过滤器则可以对几乎所有请求起作用。 4、拦截器可以访问Action上下文、值栈里的对象,而过滤器不能。 5、在Action的生命周期中,拦截器可以多次调用,而过滤器只能在容器初始化时被调用一次

  30. 十二、Struts2应用 • 基于Struts2框架的在线答疑系统 • 管理员登录功能 • 用户管理功能 • 问题管理功能 • 答疑查询功能

  31. 小结 • 深入理解Struts体系结构和工作流程 • 掌握Struts2框架的开发方法 • 使用Struts2框架开发Java Web应用程序 (不断学习总结,学以致用) 作业: 实现基于Struts框架的在线答疑系统

  32. Thank You ! www. zepc.edu.cn

More Related