javaweb清华大学出版社

上传人:仙*** 文档编号:171199527 上传时间:2022-11-24 格式:PPT 页数:74 大小:1.02MB
返回 下载 相关 举报
javaweb清华大学出版社_第1页
第1页 / 共74页
javaweb清华大学出版社_第2页
第2页 / 共74页
javaweb清华大学出版社_第3页
第3页 / 共74页
点击查看更多>>
资源描述
主讲教师:王春梅主讲教师:王春梅Java Web 开发技术v 课程目的 了解Web应用开发的基础知识;掌握使用Java技术开发Web应用程序的方法;为继续学习Java EE高级技术奠定基础。v 课程要求 掌握Java Web应用开发的主要技术;Servlet技术 JSP技术 能够开发一个简单Web应用程序。v HTTP、HTML知识、JavaScript、CSS、DOM、XML等v Java语言知识v 数据库知识Java Web 编程技术 沈泽刚 秦玉平 主编 清华大学出版社 2010.3v 第1章 Web应用概述v 第2章 Servlet模型v 第3章 Servlet容器模型v 第4章 会话管理v 第5章 JSP技术模型v 第6章 Web组件与JavaBeansv 第7章 JDBC数据库访问v 第8章 使用表达式语言(EL)v 第 9章 使用自定义标签v 第10章 JSTL与标签文件v 第11章 Web事件模型与过滤器v 第12章 Web应用程序的安全性v 第13章 Struts框架基础v 第14章 Ajax技术基础主要参考文献Web 技术 Jeffrey C.Jackson 陈宗斌 等译 清华大学出版社 2007.6Servlet与JSP核心编程(第2版 第1卷)Volume 1 Marty Hall 赵学良 译 清华大学出版社 2004.6Servlet与JSP核心编程(第2版 第2卷)Marty Hall,Larry Brown 胡书敏 译 清华大学出版社 2009.6JSP完全学习手册 张银鹤 等著 清华大学出版社 2008.6Head First Servlet&JSP(中文版)Bryan Basham等著 苏钰函 林剑 译 中国电力出版社 2006.10SCWCD Study Kit Hanumant Deshmukh,Manning 2005v 运行环境:JDK 1.7.0版v 开发工具:MyEclipse v 服务器:Tomcat 5.5.x版v 数据库:MySQL 5.0数据库v 电子商务系统v 在线书店系统v 网上拍卖系统v 在线考试系统v 教学系统v 论坛系统v 新闻发布系统v 博客本章主要内容:1.1 Web应用体系结构1.2 服务器的安装1.3 HTTP基础1.4 动态Web文档技术1.5 Servlet与JSP入门1.6 小结 Web应用体系结构v 1.1.1 万维网概述v 1.1.2 浏览器和服务器v 1.1.3 HTML概述v 1.1.4 URL万维网概述v 万维网的发展 万维网是英文World Wide Web的缩写,一般称为WWW,通常又简称为Web。Web 1989年诞生于欧洲原子能研究中心CERN。1989年3月,CERN的物理学家Tim Berners-Lee提出了一个新的因特网协议,并给出了使用该协议的一个文档访问系统。这个新系统被命名为万维网,其目的是让全世界的科学家能利用因特网交换文档。v 万维网上服务器所提供的文档需要通过浏览器进行访问,浏览器是一种程序。v 1993年,美国伊利诺伊大学的 Marc Andreessen开发并发布了第一个图形化的浏览器,名为Mosaic。v Mosaic非常受欢迎,以至于在一年后Andreessen离开学校创办了著名的Netscape公司(Netscape Communications Corp.),其开发的浏览器称为Netscape Navigator。v 1994年,CERN和MIT(Massachusetts Institute of Technology)签署了建立万维网联盟(World Wide Web Consortium,简称W3C)的协议,该组织致力于进一步开发Web、对协议进行标准化等工作。v W3C的主页是http:/www.w3.org/Consortium/,在这里可以获得关于Web的最新信息。v 随着Microsoft公司进入浏览器领域,Netscape Navigator与Microsoft的Internet Explore之间发生了激烈的竞争。v Netscape公司于1998年被美国在线(American Online,简称AOL)以42亿美圆收购。v 1.Web服务器 向浏览器提供服务的程序。服务器是一种被动的程序,只有当其他计算机的浏览器向它们发出请求时才有所动作。v 2.目前最流行的服务器 最常用的Web服务器是Apache服务器,主要运行在Unix和Linux平台上。目前在Internet上有68%的Web站点使用Apache 服务器。另一种是专门运行在Windows平台上的IIS服务器。服务器和浏览器v 3.Web浏览器 浏览器是一个程序 能够显示Web页面 能够捕捉到页面上项目的鼠标事件 浏览器向服务器发出访问某个文档的请求 v 4.目前最流行的几种浏览器 Internet Explorer Netscape Navigator FireFox MozillavTomcat是由Sun公司和Apache 开发小组共同提出的合作项目Apache Jakarta项目下的产品,是为了使 Servlet/JSP能够与 Apache服务器一起运行而开发的Servlet/JSP容器。v下载网站:http:/tomcat.apache.org/v最新版本是Tomcat 5.5版。可以下载Windows可执行的安装文件,下载后的文件名为apache-tomcat-5.5.35.exe。v 服务器的安装与配置Tomcat下载的时候有两个版本v 手工安装版v Windows安装版使用windows安装版可以直接在服务中进行注册,通过服务器动Tomcat服务器,而手工版的话,就必须进行单独的配置。v必须先安装Java运行时环境(Java Runtime Enviroment,简称JRE),这里假设已在D:JAVA目录下安装了JRE。vTomcat有运行的时候必须使用jdk,本身必须有JAVA SE的支持。所以此时,需要在环境变量中设置好要使用的到底是那一个jdk.我的电脑-属性-高级-环境变量 新建JAVA_HOME的变量 此时,就相当于把要使用的jdk进行了设置,在以后的Tomcat运行的时候会自动的找到JAVA_HOME所指定的JDK进行操作。安装安装TomcatTomcat v Tomcat主目录中的文件夹有以下几个:bin:所有的可执行文件。common:里面存放主要的*.jar包 conf:配置文件,服务器的修改都要从此目录中进行 logs:日志文件,如果服务器出现错误,会自动记录 server:服务的管理程序 webapps:所有的可执行的WEB项目都会放在此目录之中 work:此文件夹中保存了所有的临时文件,当开发中发现一个程序无论怎样调整都无法正确执行的时候,就可以考虑将此文件夹中的全部内容清空。启动Tomcat服务器v 直接使用bin目录中的tomcat5.ext即可。启动完成之后,就可以输入如下的地址访问Tomcat服务器:启动浏览器:输入地址 http:/localhost:-dns-ip地址配置Tomcat服务器v Tomcat的所有配置都放在conf文件夹中,里面的server.xml文件时配置的核心文件。如果要想修改服务器的启动端口,则可以讲server.xml文件的Connector port端口修改为”80”即可。需要特别注意的是:一旦服务器中的*.xml文件一改变,则服务器必须重新启动。配置虚拟目录v Tomcat中配置虚拟目录是必须的,因为所有的开发有可能是在其他目录中完成的,当然,如果想要配置需要目录,则首先也有严格的要求,配置的虚拟目录里必须有以下的目录结构:v WEB ROOT-一般情况下虚拟目录要配置到此文件夹之中v WEB-INFv web.xml:配置文件,有格式要求v 但是,此时不知道文件的格式是什么,那么可以直接从Tomcat中找到此配置要求。举例:webdemoWEB-INFweb.xmlvv Welcome to Tomcatv v Welcome to Tomcatv vv v org.apache.jsp.index_jspv org.apache.jsp.index_jspv v v org.apache.jsp.index_jspv /index.jspv vv但是此时,服务器并不知道在D盘上存在这样的一个工作目录,所以此时,必须在server.xml文件之中配置此工作目录(虚拟目录)修改server.xml文件。在里面加入如下配置,但是便携式,必须注意文件的编写要求(/host之上进行配置):context 表示上下文,表示配置一个新的上下文 path:表示浏览器中的输入路径,必须有“/”docBase:表示此路径对应着硬盘上的真实目录 http:/localhost:80/demoD:webdemo一一对应了。404错误表示的是客户端错误,表示路径出错Tomcat将目录的列表功能关闭了,所以现在要修改Tomcat中的web.xml文件第一个程序Hello World。v hello.jsp HELLO WORLD!%out.println(Hello World!);out.println(Hello World!);%v 1.HTML HTML是英文HyperText Markup Language的缩写,含义为超文本标记语言 它是一种用来制作超文本文档的简单标记语言。它不是一种编程语言,是一种标记语言。HTML概述v 1.URL Uniform Resource Locator 叫做统一资源定位符 命名Web页面和其他资源。v 2.URL的示例:http:/ http:/localhost:8080/bookstore/URLv 3.URL的组成:协议名称 http,ftp,news,mailto,file 主机的DNS名 或IP地址 192.168.0.1 可选的端口号 80,8080,1521 资源的名称 /index.htmlv 1.2.1 理解HTTP协议 v 1.2.2 HTTP请求结构v 1.2.3 HTTP响应结构1.2 HTTP基础v 1.HTTP协议 HTTP(Hypertext Transfer Protocol)协议 是一个基于请求-响应的无状态的协议。v 2.运行机制 客户向服务器发送一个对某种资源的 HTTP 请求 服务器返回对所需要的资源的 HTTP 响应 图1.1说明了其运行机制理解HTTP协议图1.1 HTTP请求响应示意图客户(浏览器)Web服务器1.打开连接2.HTTP请求3.HTTP响应4.关闭连接理解HTTP协议v 3.Internet中Web资源 资源包括HTML文件、图像文件和servlet等。每个资源都通过唯一的统一资源标识符URI(Uniform Resource Identifier)标识。v 4.URI、URL、URN比较 URI:标识任何资源的字符串 URI是URL与URN的超集。例如:files/sales/report.html是一个URIv URL:指定了如http、ftp及mailto等Internet协议的URI称为URL URL是非正式的术语,因此不在技术规范中使用 例如:http:/ v URN:它唯一标识一个资源但不指定如何访问资源 ISBN:1-930110-59-6是一个URN,因为它唯一地标识某一本书,但它不是URL,因为它没有指定如何检索该书。动态Web文档技术v1.3.1 静态Web文档和动态Web文档v1.3.2 服务器端动态文档技术v1.3.3 客户端动态文档技术v1.主动资源与被动资源 Web资源可分为主动资源和被动资源。如果资源本身没有任何处理功能它就是被动的 如果资源有自己的处理功能,它就是主动的 示例:浏览器向http:/ 在Web发展的早期,Web文档只是一种以文件的形式存放在服务器端的文档。客户发出对该文档的请求,服务器返回这个文件。这种文档称为静态文档(static document)。v静态Web文档的特点 文档创作完毕后就存放在Web服务器中,在被用户浏览的过程中,其内容不会改变。用户每次对静态文档的访问所得的结果都是相同的。优点:简单 可以由不懂程序设计的人员来创建 缺点:不够灵活 信息变化时,就要由文档的作者手工对文档修改v3.动态Web文档 动态文档(dynamic document)是指文档的内容是根据需要生成的。动态文档技术分类:服务器端动态文档技术客户端动态文档技术 vCGI技术 vServlet技术vHTML页面中嵌入脚本技术服务器端动态Web文档技术1.CGI技术 CGI(Common Gateway Interface,公共网关接口)CGI是一种标准化的接口允许Web服务器与后端程序及脚本通信,这些后端程序和脚本能够接受输入信息(例如,来自表单),并生成HTML页面作为响应。CGI与与Web服务器和应用程序的关系服务器和应用程序的关系 浏览器InternetWeb服务器CGI应用程序这里的应用程序一般也称为CGI程序。CGI程序可以用服务器支持的任何语言来编写,其中最常见的是Perl语言.服务器在接收到一个对CGI程序的请求时,不会返回该文件,而是运行该文件。v2.HTML文档中调用CGI程序有两种方法:通过表单的action属性 按提交按钮后,将请求发送给该程序.使用锚标记(),这与链接文档相似。href属性中指定CGI程序文件名的完整的URL路径 示例程序:源代码v4.Servlet技术:Sun公司开发的服务器端Web编程技术.主要目的是替代CGI编程.有很多优点.本课程前5章要讨论的内容.v5.在HTML页面中嵌入脚本技术在HTML页面中嵌入少量的脚本,然后让服务器来执行这些脚本以便生成最终发送给客户的页面。常用技术包括:PHP、JSP和ASP v6.PHP技术:PHP(PHP:Hypertext Preprocessor)称为超文本预处理器,它是一种HTML内嵌式的语言。它可以比CGI或Perl更快速地执行动态网页。服务器要求包含PHP的Web页面的文件扩展名为php,而不是html或htm。v7.ASP技术:ASP是Active Server Page的缩写,称为活动的服务器页面。它使用Microsoft的脚本语言Visual Basic Script来生成动态内容。使用这种技术的文件的扩展名为asp。v8.JSP技术:JSP是JavaServer Pages的缩写,含义是Java服务器页面.页面中的动态部分是用Java语言编写的。使用这种技术的文件的扩展名为jsp。v1.客户端动态文档技术的需求响应鼠标移动事件 直接与用户交互 客户端验证等v2.客户端动态文档技术的实现:在HTML页面中嵌入脚本,而且这些脚本是客户机上被执行的而不是在服务器上执行的。从HTML 4.0开始,可以通过标签来使用这样的脚本。最流行的客户端脚本语言是JavaScript。客户端动态Web文档技术v3.JavaScript是一种脚本语言它受到了Java程序设计语言的一些思想的启发 它与Java完全不是一回事。JavaScript脚本语言非常适合交互式页面的设计。v4.一个包含JavaScript的页面源代码:执行结果:.chap01register.htmlv5.客户端动态文档的技术与服务器端动态文档的技术的区别 服务器端动态文档技术的页面,是在服务器端执行的。对一个PHP文件的请求,服务器首先执行该页面,PHP脚本将产生一个新的HTML页面,然后服务器将该页面送回给浏览器以便显示。执行过程如下图:服务器端动态文档的执行 用户浏览器服务器PHP模块1234v客户端动态文档技术的页面,是在客户端执行的。v对于程序1.5的例子,当我们单击submit按钮时,浏览器解释执行该页面上包含的JavaScript函数。所有的工作都是在本地的浏览器内部完成。浏览器并没有与服务器联系。v执行过程如下图:客户端动态文档的执行 用户浏览器服务器JavaScript121.5.1 什么是Servlet?1.5.2 什么是Servlet容器1.5.3 Servlet的开发1.5.4 错误处理1.5.5 Servlet与CGI比较1.5.6 什么是JSP页面?1.5.7 使用Servlet还是JSP?1.5 Servlet1.5 Servlet与与JSPJSP入门入门 vServlet一般翻译成服务器端小程序,它是使用Servlet API以及相关的类编写的Java程序。主要用来扩展Web服务器的功能。vServlet技术实际上是CGI技术的一种替代。什么是ServletvWeb服务器使用一个单独的模块装载和运行Servlet。这个专门用于Servlet管理的单独模块称为Servlet容器(container),或称Web容器。v图1.17显示了各种不同的组件构成的一个示意图。什么是Servlet容器Web 服务器Servlet容器*.htmlServletDBHTTP请求HTTP响应Web浏览器vServlet容器可以分为以下三种类型:独立运行的、进程内运行的和进程外运行的。独立运行的Servlet容器通常是基于Java的Web服务器,其结构如图所示。所有的请求Servlet容器处理空间(JVM)主Web服务器Servlet容器vServlet是Web应用程序的一个组件。Web应用程序具有严格定义的目录结构。在Tomcat中,每个应用程序都应在安装目录的webapps目录下有一个目录。v建立一个名为helloapp的Web应用程序 v1.编写代码编写代码 HelloServlet.javav2.编译编译v3.部署部署 web.xmlv4.运行运行1.5.3 Servlet的开发 vimport javax.servlet.*;vimport javax.servlet.http.*;v在Tomcat中,它们包含在libservlet-api.jar文件中。v须将该文件所在的路径添加到CLASSPATH环境变量中。地址栏中输入下面的URL:http:/localhost:8080/helloapp/hello v在执行Servlet时,由于各种原因可能会出现错误,下面是最经常出现的错误:HTTP Status 404404-/helloapp/hello.The requested resource(/helloapp/hello)is not available.v404错误是最常见的一种错误,它表示请求的资源不可用。有多种原因可导致该错误。你可以从这几方面检查:查看给定的路径名是否正确(包括大小写);查看Servlet类文件是否在WEB-INFclasses目录中;查看web.xml文件内容是否正确;查看Tomcat服务器是否启动。1.5.4 错误处理 优点:(1)高效性。每个请求由一个轻量级的Java线程处理(2)方便性。提供了大量的实用工具例程(3)功能强大。许多使用传统CGI程序很难完成的任务都可以轻松地完成。(4)可移植性好。为一个服务器编写的Servlet无需任何实质上的改动即可移植到其他服务器上。(5)节省投资。有许多廉价甚至免费的Web服务器可供个人或小规模网站使用 1.5.5 Servlet的优缺点 缺点:v缺点是它经常既包含业务逻辑又包含表示逻辑。v表示逻辑(presentation logic)是展示给用户的信息,在Servlet中产生HTML响应就是表示逻辑。v业务逻辑(business logic)是完成某种数据处理和存储任务的功能。vSun在推出Servlet技术后不久又推出了JSP技术。有了JSP技术就可以实现业务逻辑和表示逻辑的分离:Servlet专门处理业务逻辑用JSP实现表示逻辑。1.5.5 Servlet的优缺点 v JSP(Java Server Pages)页面是包含Java代码和HTML标签的Web页面。v 由主动的JSP标签和被动的HTML标签混合而成的Web页面。1.5.6 什么是JSP页面 A Simple JSP Page Hello,World!The time now is:hello.jsp 使用下面的URL访问它:http:/localhost:8080/helloapp/hello.jspsquare.jsp numbersquared%for(int%for(int i=0;i i=0;i%=(i i)%1.5.7 使用Servlet还是JSPv 用Servlet可以实现JSP的功能,用JSP也可以实现Servlet的功能。v 请记住下面两点:JSP页面主要实现可视化的表示逻辑。Servlet主要用来实现业务处理和控制逻辑。v MVC称为模型-视图-控制器(Model View Control,MVC)模式。在这种设计模式中,控制器使用Servlet实现,视图使用JSP实现,而模型使用JavaBeans实现。留个作业吧!占总成绩 5分v 为某网站设计一个HTML页面作为网站的首页。v 主题自拟,如:电子商务网站 在线书店 主题论坛v 要求:界面包含专业网站首页的主要内容,如公司徽标,导航菜单,登录区域,广告区域v Java Web编程技术 课程网站 谢谢 谢!谢!Q&AQ&A
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!