书签 分享 收藏 举报 版权申诉 / 94
上传文档赚钱

类型第1章JavaWeb技术基础知识课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2952815
  • 上传时间:2022-06-14
  • 格式:PPT
  • 页数:94
  • 大小:420.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第1章JavaWeb技术基础知识课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    JavaWeb 技术 基础知识 课件
    资源描述:

    1、2022年6月3日1Java Web技术整合应用与项目实战-JSP+Servlet+Struts2+Hibernate+Spring3张志锋 朱颢东 等编著清华大学出版社2022年6月3日2 | 海 有 | 壁 无 |一份耕耘。 | 纳 容 | 立 欲 |一份收获! | 百 乃 | 千 则 |岂能事事如意,但求无愧于心! | 川 大 | 仞 刚 |把微笑留给世界,让世界因你微笑!2022年6月3日3第第1章章 Java Web技术基础知识技术基础知识 1.1 Web基础知识基础知识1.1.1 Web技术的由来与发展技术的由来与发展1.1.2 Web动态网页技术动态网页技术1.2 JSP基础知识

    2、基础知识1.2.1 JSP的工作原理的工作原理1.2.2 JSP的两种体系结构的两种体系结构1.2.3 JSP开发开发Java Web站点的主要方式站点的主要方式1.3 Struts2基础知识基础知识1.3.1 Struts2的由来与发展的由来与发展1.3.2 Struts2的工作原理的工作原理1.4 Hibernate基础知识基础知识1.4.1 Hibernate的由来与发展的由来与发展1.4.2 Hibernate的工作原理的工作原理1.5 Spring3基础知识基础知识1.5.1 Spring3的由来与发展的由来与发展1.5.2 Spring3框架的体系结构框架的体系结构2022年6月3

    3、日4第2章 JSP技术2.1 HTML页面的基本构成2.1.1 使用NetBeans 7开发HTML页面2.1.2 使用MyEclipse 10开发HTML页面2.2 HTML常用标签2.2.1 列表标签2.2.2 多媒体和超链接标签2.2.3 表格标签2.2.4 表单标签2.2.5 框架标签2.3 CSS基础知识2.3.1 CSS样式表定义2.3.2 HTML中加入CSS的方法2.3.3 CSS的优先级2.3.4 CSS基本属性2.4 JSP页面的基本结构2.5 JSP三种常用注释2.5.1 隐藏注释2.5.2 HTML注释2.5.3 Java注释2022年6月3日52.6 JSP常用脚本元

    4、素2.6.1 变量和方法的声明2.6.2 表达式和脚本2.7 JSP常用指令2.7.1 page指令2.7.2 include指令2.7.3 taglib指令2.8 JSP常用动作2.8.1 动作2.8.2 动作2.8.3 动作2.8.4 动作2.8.5 动作2.8.6 动作2.9 JSP常用内置对象2.9.1 out对象2.9.2 request对象2.9.3 response对象2.9.4 session对象2.9.5 pageContext对象2.9.6 exception对象2.9.7 application对象2022年6月3日6第3章 JavaBean技术3.1 JavaBean基

    5、础知识3.2 编写和使用JavaBean3.2.1 编写JavaBean组件3.2.2 在JSP页面中使用JavaBean3.3 JavaBean的作用域3.4 JavaBean应用实例3.4.1 使用JavaBean访问数据库3.4.2 使用JavaBean实现猜数游戏3.4.3 使用JavaBean实现购物系统2022年6月3日7第4章 JDBC技术4.1 JDBC基础知识4.2 通过JDBC-ODBC桥访问数据库4.2.1 通过桥访问Access4.2.2 通过桥访问Excel4.2.3 通过桥访问Microsoft SQL Server 20084.3 通过JDBC驱动访问数据库4.3

    6、.1 访问MySQL 5.5数据库4.3.2 访问Microsoft SQL Server 2000数据库4.3.3 访问Microsoft SQL Server 2008数据库4.4 查询数据库4.5 更新数据库(增、删、改)4.6 JSP在数据库应用中的相关问题4.6.1 JSP的分页技术4.6.2 汉字处理4.7 学生信息管理系统应用实例2022年6月3日8第5章 企业信息管理系统5.1 项目需求说明5.2 项目系统分析5.3 项目数据库设计5.4 项目实现5.4.1 项目文件结构5.4.2 登录功能的实现5.4.3 系统主页面功能的实现5.4.4 客户管理功能的实现5.4.5 合同管理

    7、功能的实现5.4.6 售后管理功能的实现5.4.7 产品管理功能的实现5.4.8 员工管理功能的实现2022年6月3日9第6章 Java Servlet技术6.1 Servlet基础知识6.1.1 什么是Servlet6.1.2 Servlet生命周期6.1.3 Servlet的技术特点6.1.4 Servlet与JSP的区别6.1.5 Servlet在Java Web项目中的作用6.1.6 Servlet部署6.1.7 开发一个简单的Servlet6.2 JSP与Servlet常见用法6.2.1 通过Servlet获取表单中的数据6.2.2 重定向与转发及其应用实例6.3 基于JSP+Ser

    8、vlet留言系统2022年6月3日10第7章 基于MVC设计模式的个人信息管理系统7.1 MVC 设计模式基础知识7.1.1 什么是MVC设计模式7.1.2 MVC设计模式的工作原理7.2 项目需求说明7.3 项目系统分析7.4 项目数据库设计7.5 项目实现7.5.1 项目文件结构7.5.2 登录和注册功能的实现7.5.3 系统主页面功能的实现7.5.4 个人信息管理功能的实现7.5.5 通讯录管理功能的实现7.5.6 日程安排管理功能的实现7.5.7 个人文件管理功能的实现2022年6月3日11第8章 Struts2框架技术入门8.1 Struts2软件包8.1.1 Struts2软件包的

    9、下载8.1.2 Struts2软件包介绍8.2 Struts2的配置8.2.1 在NetBeans 7中安装Struts2插件8.2.2 使用NetBeans 7新建Struts2项目8.2.3 在NetBeans 7中配置Struts28.2.4 在MyEclipse 10中配置Struts28.3 Struts2的核心组件入门8.3.1 Struts2的控制器组件8.3.2 Struts2的模型组件8.3.3 Struts2的视图组件8.4 基于Struts2的登录系统8.4.1 使用NetBeans 7开发项目8.4.2 使用MyEclipse10开发项目2022年6月3日12第9章 S

    10、truts2核心组件详解9.1 Struts2的配置文件struts.xml9.1.1 struts.xml配置文件的结构9.1.2 Bean配置9.1.3 常量配置9.1.4 包含配置9.1.5 包配置9.1.6 命名空间配置9.1.7 Action配置9.1.8 结果配置9.1.9 拦截器配置2022年6月3日139.2 Struts2的核心控制器FilterDispatcher9.3 Struts2的业务控制器Action9.3.1 Action接口和ActionSupport类9.3.2 Action实现类9.3.3 Action访问ActionContext9.3.4 Action直

    11、接访问Servlet9.3.5 Action中的动态方法调用9.4 Struts2的OGNL表达式9.4.1 Struts2的OGNL表达式9.4.2 Struts2的OGNL集合2022年6月3日14第10章 Struts2的标签库10.1 Struts2的标签库概述10.2 Struts2的表单标签10.2.1 标签10.2.2 标签10.2.3 标签10.2.4 标签10.2.5 标签10.2.6 标签10.2.7 标签10.2.8 标签10.2.9 标签10.2.10 标签10.2.11 标签10.3 Struts2的非表单标签10.3.1 标签10.3.2 和标签10.3.3 标签2

    12、022年6月3日1510.4 Struts2的数据标签10.4.1 标签10.4.2 标签10.4.3 标签10.4.4 标签10.4.5 标签10.4.6 标签10.4.7 标签10.4.8 标签10.5 Struts2的控制标签10.5.1 标签、标签和标签10.5.2 标签10.5.3 标签10.5.4 标签10.5.5 标签10.5.6 标签10.5.7 标签2022年6月3日1610.6 Struts2的Ajax标签10.6.1 ajax主题10.6.2 标签10.6.3 标签10.6.4 标签10.6.5 标签10.6.6 标签2022年6月3日17第11章 Struts2国际化与

    13、文件上传下载11.1 Struts2的国际化11.1.1 Struts2实现国际化的流程11.1.2 Struts2国际化应用实例11.2 Struts2的文件上传和下载11.2.1 文件上传11.2.2 文件下载2022年6月3日18第12章 Struts2的拦截器与输入校验12.1 Struts2的拦截器12.1.1 Struts2拦截器的基础知识12.1.2 Struts2拦截器实现类12.1.3 Struts2拦截器应用实例12.2 Struts2的输入校验12.2.1 Struts2输入验证的基础知识12.2.2 Struts2的手工验证12.2.3 Struts2内置校验器的使用1

    14、2.2.4 Struts2内置校验器应用实例2022年6月3日19第13章 基于Struts2的个人信息管理系统13.1 项目需求说明13.2 项目系统分析13.3 项目数据库设计13.4 项目实现13.4.1 项目文件结构13.4.2 用户登录和注册功能的实现13.4.3 系统主页面功能的实现13.4.4 个人信息管理功能实现13.4.5 通讯录管理功能实现13.4.6 日程安排管理功能实现13.4.7 个人文件管理功能实现2022年6月3日20第14章 Hibernate框架技术入门14.1 Hibernate软件包14.1.1 Hibernate软件包下载14.1.2 Hibernate

    15、软件包介绍14.2 Hibernate的配置14.3 Hibernate的核心组件入门14.4 基于Struts2+Hibernate的登录和注册系统14.4.1 项目介绍14.4.2 在web.xml中配置核心控制器FilterDispatcher14.4.3 编写视图组件(JSP页面)14.4.4 编写业务控制器Action14.4.5 修改struts.xml配置Action14.4.6 Hibernate的配置文件14.4.7 加载Hibernate配置文件的类(JavaBean)14.4.8 PO对象以及对应的映射文件14.4.9 完成登录和注册功能业务功能的JavaBean14.4

    16、.10 项目部署和运行2022年6月3日21第15章 Hibernate核心组件详解15.1 Hibernate的配置文件15.1.1 hibernate.cfg.xml15.1.2 hibernate.properties15.2 Hibernate的PO对象15.2.1 Hibernate的PO对象基础知识15.2.2 Hibernate的PO对象状态15.3 Hibernate的映射文件15.4 Hibernate的Configuration类15.5 Hibernate的SessionFactory接口15.6 Hibernate的Session接口15.6.1 Session接口的基

    17、础知识15.6.2 通过方法获取持久化对象(PO)15.6.3 操作持久化对象(PO)的常用方法2022年6月3日2215.7 Hibernate的Transaction接口15.8 Hibernate的Query 接口15.8.1 Query接口的基本知识15.8.2 Query接口的常用方法15.9 基于Struts2+Hibernate的学生信息管理系统15.9.1 项目介绍、主页面以及查看学生信息功能的实现15.9.2 添加学生信息功能的实现15.9.3 修改学生信息功能的实现15.9.4 删除学生信息功能的实现2022年6月3日23第16章 Hibernate的关联关系16.1 一对

    18、一关联关系16.1.1 主键关联16.1.2 外键关联16.1.3 一对一关联关系的应用实例16.2 一对多关联关系16.2.1 单向关联16.2.2 双向关联16.2.3 一对多关联关系的应用实例16.3 多对多关联关系2022年6月3日24第17章 Hibernate的其它常用功能17.1 Hibernate 数据查询17.1.1 Hibernate Query Language17.1.2 Criteria Query方式17.1.3 Native SQL 查询17.2 Hibernate 的事务管理17.2.1 事务的特性17.2.2 事务隔离17.2.3 在Hibernate配置文件

    19、中设置隔离级别17.2.4 在Hibernate中使用JDBC 事务17.2.5 在Hibernate中使用JTA 事务17.3 Hibernate的Cache管理17.3.1 一级Cache17.3.2 二级Cache2022年6月3日25第18章 基于Struts2+Hibernate的项目系统18.1 基于Struts2+Hibernate的教务管理系统18.1.1 项目需求分析与设计18.1.2 项目数据库设计18.1.3 项目实现18.2 基于Struts2+Hibernate的考勤系统18.2.1 系统需求分析与设计18.2.2 项目数据库设计18.2.3 项目实现2022年6月3

    20、日26第19章 Spring3框架技术入门19.1 Spring3软件包19.1.1 Spring3软件包下载19.1.2 Spring3软件包的介绍19.2 Spring3的配置19.3 Spring3 IoC的原理和主要组件19.3.1 IoC的基础知识以及原理19.3.2 IoC的主要组件19.3.3 IoC的应用实例19.3.4 注入的两种方式2022年6月3日2719.4 基于Struts2+Hibernate+Spring3的登录系统19.4.1 项目介绍19.4.2 在web.xml中配置Struts2和Spring319.4.3 编写视图组件(JSP页面)19.4.4 Acti

    21、on和JavaBean19.4.5 Struts2、Spring3和Hibernate的配置文件19.4.6 Struts2、Spring3和Hibernate整合中常见问题19.4.7 项目部署和运行2022年6月3日28第20章 Spring3的AOP框架20.1 AOP框架基础知识20.1.1 AOP框架简介20.1.2 Spring3的AOP框架主要术语20.2 代理(Proxy)20.2.1 静态代理20.2.2 动态代理20.3 创建通知(Advice)20.3.1 前置通知(Before Advice)20.3.2 后置通知(After Advice)20.3.3 环绕通知(Ar

    22、ound Advice)20.3.4 异常通知(Throws Advice)20.3.5 引入通知(Introduction Advice)20.4 定义切入点(Pointcut)20.4.1 静态切入点和动态切入点20.4.2 切入点的应用实例20.5 创建引入(Introduction)2022年6月3日29第21章 基于Struts2+Hibernate+Spring3的BBS系统21.1 项目需求分析21.2 项目系统分析21.3 项目的数据库设计21.4 项目实现21.4.1 项目的文件结构和主页面21.4.2 BBS登录功能的实现21.4.3 BBS板块管理功能的实现21.4.4

    23、BBS帖子管理功能的实现21.4.5 个人信息管理功能的实现2022年6月3日30第第1章章 Java Web技术基础知识技术基础知识 1.1 Web基础知识基础知识1.2 JSP基础知识基础知识1.3 Struts2基础知识基础知识1.4 Hibernate基础知识基础知识1.5 Spring3基础知识基础知识2022年6月3日311.1 Web基础知识基础知识1.1.1 Web技术的由来与发展技术的由来与发展1.1.2 Web动态网页技术动态网页技术2022年6月3日321.1.1 Web技术的由来与发展技术的由来与发展vWeb(World Wide Web,简称WWW或者Web)是由蒂姆

    24、伯纳斯-李(Tim Berners-Lee,万维网之父,1955年出生于英国、不列颠帝国勋章获得者、英国皇家学会会员、英国皇家工程师学会会员、美国国家科学院院士)于1989年3月提出的万维网设想而发展起来的。 v1980年,Tim Berners-Lee负责的Enquire(Enquire Within Upon Everything的简称)项目 是Web项目的起源。v1989年,Tim Berners-Lee 发明的分布式应用架构,向人们提供信息和信息服务。v 1990年,第一个Web服务器开始运行。v 1991年,CERN(European Particle Physics Laborat

    25、ory)正式发布了Web技术标准。 2022年6月3日33v早期的Web应用主要是使用HTML语言编写、运行在服务器端的的静态页面。 2022年6月3日34vHTML(Hypertext Markup Language,超文本标记语言)是一种描述文档结构的语言,不能描述实际的表现形式。v1945年,范内瓦布什(Vannevar Bush)提出了文本和文本之间通过超级链接相互关联的思想,并给出设计方案。v范内瓦布什具有6个不同学位的科学家、教育家和政府官员与本世纪许多著名的事件都有着千丝万缕的联系,如组织和领导了制造第一颗原子弹著名的“曼哈顿计划”、氢弹的发明、登月飞行、“星球大战计划”。正如历

    26、史学家迈克尔雪利所言,“要理解比尔盖茨和比尔克林顿的世界,你必须首先认识范内瓦布什。”正是因其在信息技术领域多方面的贡献和超人远见,范内瓦布什获得了“信息时代的教父”的美誉。 v1960年后正式将这种信息关联技术命名为超文本(Hypertext)技术。v1991年HTML语言正式诞生以来推出了多个不同的版本,其中对Web技术发展具有重大影响的主要是两个版本: 1996年推出的HTML3.2;1998年推出的HTML4.0。v1999年W3C颁布了HTML 4.01。 2022年6月3日35v为了满足人们对信息丰富性和多样性的强烈需求。促使Web技术由静态技术向动态技术的转化。v第一种使服务器能

    27、根据运行时的具体情况,动态生成HTML页面的技术是CGI(Common Gateway Interface,公共网关接口)技术。v1993年,CGI 1.0的标准草案由NCSA(National Center for Supercomputing Applications)提出,1995年,NCSA开始制定CGI 1.1标准。vCGI技术允许服务端的应用程序根据客户端的请求,动态生成HTML页面,这使客户端和服务端的动态信息交换成为了可能。2022年6月3日36v1994年,Rasmus Lerdorf发明了专用于Web服务端编程的PHP(Personal Home Page Tools)语言

    28、。v1996年,Microsoft借鉴PHP的思想,推出ASP技术。借助Microsoft Visual Studio等开发工具在市场上的成功,ASP迅速成为了Windows系统下Web服务端的主流开发技术。v1997年,SUN公司推出了Servlet技术,作为Java阵营的CGI解决方案。v1998年,SUN公司又推出了JSP技术,允许在HTML页面中嵌入Java脚本代码,从而实现动态网页功能。2009年4月20日,甲骨文(Oracle)公司以74亿美元收购Sun公司。 2022年6月3日37v2000年以后,随着Web应用程序复杂性不断提高,人们逐渐意识到,单纯依靠某种技术,很难能够实现快

    29、速开发、快速验证和快速部署的效果,必须整合Web开发技术形成完整的开发框架或应用模型,来满足各种复杂的应用程序的需求。Web技术出现了几种主要的技术整合方式:MVC设计模式、门户服务和Web内容管理。Struts、Spring、Hibernate框架技术等都是开源世界里与MVC设计模式、门户服务和Web内容管理相关的优秀解决方案。2022年6月3日381.1 Web基础知识基础知识1.1.1 Web技术的由来与发展技术的由来与发展1.1.2 Web动态网页技术动态网页技术2022年6月3日391.1.2 Web动态网页技术动态网页技术v动态网页技术是运行在服务器端的Web应用程序,根据用户的请

    30、求,在服务器端进行动态处理后,把处理的结果以HTML文件格式返回给客户端。v当前主流的三大动态Web开发技术是: PHP ASP/ASP.NET JSP2022年6月3日40PHPv1994年Rasmus Lerdorf创建了PHP。v1995年初Personal Home Page Tools (PHP Tools)发布了PHP 1.0。v1995年又发布PHP 2.0。v1997年发布PHP 3.0。v2000年,发布PHP 4.0。v2009年发布PHP 5.3版本。v2011年发布PHP 5.4。2022年6月3日41 PHP是一个基于服务端来创建动态网站的脚本语言,可以用PHP和HT

    31、ML生成网站主页。当一个访问者打开主页时,服务端便执行PHP的命令并将执行结果发送至访问者的浏览器中,这类似于ASP和JSP。然而PHP和它们的不同之处在于PHP开放源码和跨越平台,PHP可以运行在Windows NT和多种版本的UNIX上。PHP消耗的资源较少,当PHP作为Apache Web服务器一部分时,运行代码不需要调用外部二进制程序,服务器不需要承担任何额外的负担。2022年6月3日42ASP/ASP.NET vASP是Microsoft公司开发用于代替CGI脚本程序的一种Web应用技术,可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP是基于Web的一种编程技术,是

    32、CGI的一种。ASP可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。1996年,Microsoft公司推出ASP 1.0;1998年,Microsoft公司推出ASP 2.0;1999年,Microsoft公司推出ASP 3.0;2001年,推出ASP.NET。2022年6月3日43vASP.NET技术又称为ASP+,是在ASP基础上发展起来的,是ASP 3.0升级版本,保留ASP的最大优点并全力使其扩大化,是Microsoft公司推出的新一代Web开发技术,是.NET战略中的重要一员,它全新的技术架构使编程变得更加简单,是创建动态网站和Web应用程序的最好技术之一。

    33、2022年6月3日44JSPvJSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。vSUN公司JSP1998年推出JSP0.9版本v1999年推出1.1版本v2000年推出1.2版本v现在流行的是JSP2.0版本。2022年6月3日45第第1章章 Java Web技术基础知识技术基础知识 1.1 Web基础知识基础知识1.2 JSP基础知识基础知识1.3 Struts2基础知识基础知识1.4 Hibernate基础知识基础知识1.5 Spring3基础知识基础知识2022年6月3日461.2 JSP基础知识基础知

    34、识1.2.1 JSP的工作原理的工作原理1.2.2 JSP的两种体系结构的两种体系结构1.2.3 JSP开发开发Java Web站点的主要方式站点的主要方式2022年6月3日471.2.1 JSP的工作原理的工作原理2022年6月3日48v所有的所有的JSP应用程序在首次载入时都被编译应用程序在首次载入时都被编译成成Servlet文件,然后再运行,这个工作主文件,然后再运行,这个工作主要是由要是由JSP引擎来完成。当第一次运行一个引擎来完成。当第一次运行一个JSP页面时,页面时,JSP引擎要完成以下操作:引擎要完成以下操作:1.当用户访问一个当用户访问一个JSP页面时,页面时,JSP页面将被页

    35、面将被编译成编译成Servlet文件(文件(Java文件)。文件)。2.JSP引擎调用引擎调用Java编译器,编译编译器,编译Servlet文文件为可执行的代码文件(件为可执行的代码文件(.class文件)。文件)。3.用用Java虚拟机(虚拟机(JVM)解释执行)解释执行.class文件,文件,并将执行结果返回给服务器。并将执行结果返回给服务器。4.服务器将执行结果以服务器将执行结果以HTML格式发送给客户格式发送给客户端的浏览器。端的浏览器。2022年6月3日491.2 JSP基础知识基础知识1.2.1 JSP的工作原理的工作原理1.2.2 JSP的两种体系结构的两种体系结构1.2.3 J

    36、SP开发开发Java Web站点的主要方式站点的主要方式2022年6月3日501.2.2 JSP的两种体系结构两种体系结构的两种体系结构两种体系结构1. JSP Model 1v在Model 1体系中,JSP页面独自响应请求并将处理结果返回客户,如图1-2所示。这里仍然存在显示与内容的分离,因为所有的数据存取都是由JavaBean来完成的。尽管Model 1体系十分适合简单应用的需要,它却不能满足复杂的大型Java Web应用程序需要。不加选择地随意运用Model 1,会导致JSP页内被嵌入大量的脚本片段或Java代码。尽管这对于Java程序员来说可能不是什么大问题,但如果JSP页面是由网页设

    37、计人员开发并维护的,这就确实是个问题了。从根本上讲,将导致角色定义不清和职责分配不明,给项目管理带来不必要的麻烦。 2022年6月3日512022年6月3日522. JSP Model 2vModel 2体系结构是一种把JSP与Servlet联合使用来实现动态内容服务的方法,如图1-3所示。它吸取了两种技术各自的优点,用JSP生成表示层(view)的内容,让Servlet完成深层次的处理任务。Servlet充当控制者(Controller)的角色,负责管理对请求的处理,创建JSP页面需要使用的JavaBean和对象,同时根据用户的动作决定把哪个JSP页面传给请求者。在JSP页面内没有处理逻辑,

    38、它仅负责检索原先由Servlet创建的对象或者JavaBean,从Servlet中提取动态内容插入静态模板。分离了显示和内容,明确了角色的定义以及实现了开发者与网页设计者的分开。项目越复杂,使用Model 2体系结构的优势就越突出。 2022年6月3日532022年6月3日541.2 JSP基础知识基础知识1.2.1 JSP的工作原理的工作原理1.2.2 JSP的两种体系结构的两种体系结构1.2.3 JSP开发开发Java Web站点的主要方式站点的主要方式2022年6月3日55JSP开发Web站点主要有以下几种方式:1.直接使用JSP 2.JSP+ JavaBean 3.JSP+ JavaB

    39、ean+Servlet 4.J2EE开发模型开发模型5.SSH开发框架开发框架 2022年6月3日56第第1章章 Java Web技术基础知识技术基础知识 1.1 Web基础知识基础知识1.2 JSP基础知识基础知识1.3 Struts2基础知识基础知识1.4 Hibernate基础知识基础知识1.5 Spring3基础知识基础知识2022年6月3日571.3 Struts2基础知识基础知识1.3.1 Struts2的由来与发展的由来与发展1.3.2 Struts2的工作原理的工作原理2022年6月3日581.3.1 Struts2的由来与发展的由来与发展vStruts是整合了当前动态网站开发

    40、中的Servlet、JSP、JavaBean、JDBC、XML等相关技术的一种主流Web开发框架,是一种基于经典MVC的框架。采用Struts可以简化MVC设计模式的Web应用开发工作,很好地实现代码重用,使开发人员从繁琐的工作中解脱出来,开发具有强扩展性的Web应用程序。 2022年6月3日59vStruts是Apache软件基金会下Jakarta项目(Apache组织下的一套Java解决方案的开源软件的名称)的一部分。该基金会下除Struts之外,还有其它优秀的开源产品,如Tomcat。2000年Craig R.McClanahan(1960年出生于丹麦,程序员,原Sun公司的高级员工,J

    41、SF技术规范组负责人,Apache Struts framework创始人,Servlet 2.2,2.3和JSP 1.1,1.2规范的专家组成员之一,Tomcat4的架构师)贡献了他编写的JSP Model 2架构之Application Framework原始程序代码给Apache基金会,成为Apache Jakarta计划Struts Framework的前身。v从2000年5月开始开发Struts,到2001年6月发布Struts1.0版本。有30多个开发者参与进来,并有数千人参与到讨论组中。Struts框架开始由一个志愿者团队来管理。v到2002年,Struts小组共有9个志愿者团队

    42、。Struts框架的主要架构设计和开发者是Craig R.McClanahan。2022年6月3日60vStruts自2001年推出,2004年开始升温,并逐渐成为Java Web应用开发最流行的框架技术之一。在目前的Java工程师招聘要求中,通常会强调Struts框架技术。精通Struts框架技术已经成为Java工程师必备的技能。2022年6月3日61vStruts1.X系列的版本一般称为Struts1。经过六年多的发展,Struts1已经成为了一个高度成熟的框架,不管是稳定性还是可靠性都得到了广泛的认可。市场占有率也很高,拥有丰富的开发人群,几乎已经成为了事实上的工业标准。v但是随着时间的

    43、流逝,技术的进步,Struts1的局限性也越来越多地暴露出来,并且制约了Struts1的继续发展。v目前,Struts已经分化成了两个框架:一个是在传统的Struts1基础上融合了另外一个优秀的Web框架WebWork的Struts2;另外一个就是Struts1。Struts2虽然是在Struts1的基础上发展起来的,但是实质上是以WebWork为核心的。v2007年,Apache发布Struts2.0,Struts2是Struts的下一代产品,是在Struts1和WebWork框架基础上进行整合的全新的Struts框架。其全新的Struts2体系结构与Struts1体系结构差别巨大。Stru

    44、ts 2以WebWork为核心,采用拦截器机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet完全脱离开,所以Struts 2可以理解为WebWork的更新产品。因此Struts2和Struts 1有着很大的区别,但是相对于WebWork而言,Struts2只有很小的变化。 2022年6月3日621.3 Struts2基础知识基础知识1.3.1 Struts2的由来与发展的由来与发展1.3.2 Struts2的工作原理的工作原理2022年6月3日631.3.2 Struts2的工作原理的工作原理2022年6月3日64vStruts2中使用拦截器来处理用户请求,从而允许用户的

    45、业务控制器Action与Servlet分离。Struts2的工作原理如图1-4所示,用户请求提交后经过多个拦截器拦截后交给核心控制器FilterDispatcher处理。核心控制器读取配置文件struts.xml,根据配置文件中的信息指定由某一个业务控制器Action来处理用户数据。业务控制器调用某些业务组件进行处理,在处理的过程中可以调用其它模型组件共同完成数据的处理。Action处理完后会返回给核心控制器FilterDispatcher一个处理结果,核心控制器根据返回的处理结果读取配置文件struts.xml,根据配置文件中的配置信息,决定下一步跳转到哪一个页面或者调用哪一个Action。

    46、 2022年6月3日65v一个客户请求在Struts2框架中处理的过程大概有以下几个步骤:1.客户提交请求到服务器。2.请求被提交到一系列的过滤器或者拦截器,最后到达FilterDispatcher;FilterDispatcher是核心控制器,是Struts2中MVC模式的控制器部分。3.FilterDispatcher读取配置文件struts.xml,根据配置信息调用某个Action来处理客户请求。4.Action处理后,返回处理结果,FilterDispatcher根据struts.xml的配置找到对应的页面跳转。2022年6月3日66第第1章章 Java Web技术基础知识技术基础知识

    47、 1.1 Web基础知识基础知识1.2 JSP基础知识基础知识1.3 Struts2基础知识基础知识1.4 Hibernate基础知识基础知识1.5 Spring3基础知识基础知识2022年6月3日671.4 Hibernate基础知识基础知识1.4.1 Hibernate的由来与发展的由来与发展1.4.2 Hibernate的工作原理的工作原理2022年6月3日681.4.1 Hibernate的由来与发展的由来与发展vHibernate是封装了JDBC的一种开放源代码的对象/关系映射(Object-Relation Mapping,ORM)框架,使程序员可以使用面向对象的思想来操作数据库。

    48、Hibernate是一种对象/关系映射的解决方案,即将Java对象与对象之间的关系映射到数据库表与表之间的关系。2022年6月3日69v目前,Hibernate是企业Java工程师招聘中要求必备的一门技能,也是Java Web三大经典框架之一。Christian Bauer是Hibernate之父,现是Redhat公司负责开发和维护Hibernate的项目经理。v2001年,Hibernate1发布,即Hibernate的第一个版本;2003年,Hibernate2发布,并在当年获得Jolt2003大奖(Jolt大奖素有“软件业界的奥斯卡”之美誉,共设通用类图书、技术类图书、语言和开发环境、框

    49、架库和组件、开发者网站等十余个分类大奖),2003年Hibernate被JBoss公司收购,成为该公司的子项目之一;2005年,JBoss发布Hibernate3;2006年,JBoss公司被Redhat公司收购;2012年11月发布Hibernate 4.1.8。2022年6月3日70vHibernate自发布以来受到业界的欢迎,目前许多Java程序员学习和使用它来开发商业应用软件。另外网络上有大量介绍和讨论Hibernate应用的文章,JBoss网站也提供了一个完善的社区,所以一旦在使用中遇到问题,开发者可以轻松地在网络上搜索到相应的解决方法,这又进一步吸引了更多的程序员来学习Hibern

    50、ate,吸引更多的公司采用Hibernate开发软件。 vHibernate为使用者考虑得十分周全,对于一个普通的程序员来说,只需学习不到10个类的用法就可以开发基于Hibernate框架的应用系统,实际使用起来十分方便。vHibernate提供了透明持久化功能,支持第三方框架,即能与其它框架进行整合,如Struts、Spring等等,不但提供面向对象的HQL,而且支持传统的SQL语句。2022年6月3日711.4 Hibernate基础知识基础知识1.4.1 Hibernate的由来与发展的由来与发展1.4.2 Hibernate的工作原理的工作原理2022年6月3日721.4.2 Hibe

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第1章JavaWeb技术基础知识课件.ppt
    链接地址:https://www.163wenku.com/p-2952815.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库