欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第一章 Java Web 应用程序概述.doc

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

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

    第一章 Java Web 应用程序概述.doc

    JAVA Web应用程序教案第一章 Web 应用程序概述目标2重点2难点21回顾【30分钟】2一 变量2二 流程控制2三 面向对象的编程3四 异常3五 集合类3六 JDBC32知识点讲解32.1桌面应用程序和Web应用程序32.2 HTTP协议42.2.1概述4协议:42.2.2 HTTP URL42.2.3 HTTP请求52.2.4 HTTP响应82.3应用程序体系结构92.3.1一层体系结构(所有组件包装在一个组件单元中)92.3.2二层体系结构92.3.3三层体系结构92.4 Web应用程序112.4.1 体系结构112.4.2开发过程122.4.3 在Jbuilder 2005中配置Tomcat123本章总结10分钟134核点135展部分136员问题汇总137 作业13目标 理解Web应用程序的多层体系结构 回顾HTTP协议 掌握典型Web应用程序的目录结构 描述Web应用程序的开发过程 在Jbilder 2005中配置Tomcat环境重点本阶段的重点掌握Web应用程序的构成组件难点 Web应用程序的多层体系结构1回顾【30分钟】Java语言基础:一 变量 1.值类型boolean Byte char short int float long double 2.引用类型(数组、类、接口)二 流程控制(一个顺序,两个选择,三个循环)判断语句if-else 语句switch-case 语句循环语句while 循环do-while 循环for 循环三 面向对象的编程Oop万物皆对象 类,抽象类,接口四 异常程序的错误有以下三类:语法错误,逻辑错误,运行时错误(异常将控制权交给os)五 集合类ArrayList 对象是长度可变的对象引用数组,类似于动态数组LinkedList 类用于创建链表数据结构HashMap:用于存储键/值映射关系,不能保证其元素的存储顺序Vector 类;它具有类似数组的数据结构,而且是动态的;容量可以递增六 JDBCType1:连接步骤1.加载并注册驱动Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);2.Connection con=DriverManger.getConnection(“jdbc:odbc:dsname”); DriverManager.getConnection(“jdbc:microsoft:sqlserver:/localhost:1433;databasename=pubs”,”sa”,”1234”);3.Statement stmt=con.createStatement();4.ResultSet rs=stmt.executeQuery(“select * from tablename”);2知识点讲解2.1桌面应用程序和Web应用程序2.1.12.2 HTTP协议2.2.1概述协议:计算机所之间相互通信的规则HTTP协议:用于从WWW服务器传输超文本到本地浏览器的传送协议。HTTP协议的版本:HTTP1.0/1.1:图示客户端服务器端客户端服务器端说明:蓝色标识建立、断开连接桔色标识请求响应2.2.2 HTTP URLhttp:/host:portabs_path格式:说明:1) http:标识要通过HTTP协议来定位网络资源2) host:合法的Internet主机域名或IP地址3) port:指定一个端口号,拥有被请求资源的服务器主机监听该端口的TCP连接,默认804) abs_path:指定请求资源的URI· 案例讲解 浏览器将会自动将其转换为下面的形式http:/192.168.0.1:8080 web服务器Tomcat默认为8080http:/192.168.0.1:8080/index.jsp2.2.3 HTTP请求请求包含三部分内容:请求行,消息包头和请求正文2.2.3.1请求行格式Method Request-URI HTTP-Version CRLF如:· 案例讲解GET/From.html HTTP/1.1 (CRLF)说明:1) Method:标识请求的方法A GET: 获取由RequestRUI所标识的资源信息常见的用get方法获取资源的方式:1) 通过地址栏输入网址访问网页2) 点击超级链接B POST用于向目标服务器发出请求,要求服务器接受附加在请求后面的数据。常见的POST方法:表单提交· 案例讲解POST/reg.jsp HTTP/1.1(CRLF)Accept(image/gif)Content-Length:22(CRLF)User=zhangsan&pwd=88882) RequestURI 请求的统一资源标识符;要请求的资源3) HTTPVersion 请求的HTTP协议版本4) CRLF:回车换行2.2.3.2 消息报头消息报头分为普通报头、请求报头、响应报头、和实体报头。每个报头域都是由名字”:”+空格值组成,小子报头域的名字是大小写无关的。1) 普通报头: 在普通报头中,有少数报头域应用于所有的请求和响应消息,但并不用于被传输的实体,这些报头域只用于传输的消息。 常用的普通报头域:Cache-Control,Date,Connection,Pragma.2) 请求报头: 请求报头允许客户端向服务器端传递该请求的附加信息以及客户端自身的信息。 常用的请求报头域: Accept Accept请求报头域用语指定客户端接受哪些类型的信息。例如:Accept: image/gif,表明客户端希望接受GIF图象格式的资源;Accept: text/html,表明客户端希望接受html文本。 Accept-Charset Accept-Charset请求报头域用于指定客户端接受的字符集。例如:Accept-Charset: ios-8859-1,gb2312。如果在请求消息中没有设置这个域,缺省是任何字符集都可以接受。 Accept-Encoding Accept-Encoding请求报头域类似Accept,但是它是用于指定可接受的内容编码。例如:Accept-Encoding: gzip,deflate。如果请求消息中没有设置这个域,服务器假定客户端对各种内容编码都可接受。 Accept-Language Accept-Language请求报头域类似于Accept,但是它是用于指定一种自然语言。例如:Accept-Language: zh-cn。如果请求消息中没有设置这个域,服务器假定客户端对各种语言都可接受。 Authorization Authorization请求报头域主要用于证明客户端有权查看某个资源。当浏览器访问一个页面时,如果收到服务器的响应代码为401(未授权),可以发送一个包含Authorization请求报头域的请求,要服务器对其进行验证。 Host Host请求报头域主要用于指定被请求资源的Internet主机和端口号,它通常是从HTTP URL中提取出来的。例如:http:/www.sunxin.org/index.html。浏览器发送的请求消息中,就会包含Host请求报头域,如下:Host: www.sunxin.org后面没有跟端口号,表明使用的是缺省端口号80,如果端口号不是80,那么就要在主机名后面加上一个冒号(":"),然后接上端口号,例如:Host: www.sunxin.org:8080。 要注意的是,在发送HTTP请求的时候,这个报头域是必须的。 User-Agent User-Agent允许客户端将它的操作系统浏览器和其他属性告诉服务器。我们上网登陆论坛的时候,往往看到些欢迎信息,其中列出了你的操作系统的名称 和版本等等信息。原因是:服务器从User-Agent请求报头域中获取的这些信息,自己编写浏览器可以不用这个请求报头域。服务器就无法得知了。 2) 响应报头 响应报头允许服务器传递不能放在状态行中的附加响应信息,以及关于服务器的信息和对Request-URI所标识的资源进行下一步访问的信息。 常用的响应报头域: Location Location响应报头域用于重定向接受者到一个新的位置。例如:客户端所请求的页面已不存在原先的位置,为了让客户端重定向到这个页面新的位置,服务 器端可以发回Location响应报头后使用重定向语句,让客户端去访问新的域名所对应的服务器上的资源。当我们在JSP中使用重定向语句的时候,服务器 端向客户端发回的响应报头中,就会有Location响应报头域。下面是Location响应报头域的一个例子:Location: http:/www.sunxin.org Server Server响应报头域包含了服务器用来处理请求的软件信息。它和User-Agent请求报头域是相对应的,前者发送服务器端软件的信息,后者发送客户 端软件(浏览器)和操作系统的信息。下面是Server响应报头域的一个例子:Server: Apache-Coyote/1.1 WWW-Authenticate WWW-Authenticate响应报头域必须被包含在401(未授权的)响应消息中,这个报头域和前面讲到的Authorization请求报头域是 相关的,当客户端收到401响应消息,就要决定是否请求服务器对其进行验证。如果要求服务器对其进行验证,就可以发送一个包含了 Authorization报头域的请求,下面是WWW-Authenticate响应报头域的一个例子:WWW-Authenticate: Basic realm="Basic Auth Test!"从这个响应报头域,可以知道服务器端对我们所请求的资源采用的是基本验证机制。 3) 实体报头 请求和响应消息都可以传送一个实体。一个实体由实体报头域和实体正文组成,大多数情况下,实体正文就是请求消息中的请求正文或者响应消息中的响应正 文。但是在发送时,并不是说实体报头域和实体正文要在一起发送,例如:有些响应可以只包含实体报头域。实体就好象我们写的书信,在信中,我们可以写上标 题,加上页号等,这部分就相当于是实体报头域,而我们所写的书信的内容,就相当于实体正文。前面说讲的普通报头、请求报头、响应报头我们可以看成是写在信 封上的邮编、接收者,发送者等内容。 实体报头定义了关于实体正文(例如:有无实体正文)和请求所标识的资源的元信息。 所谓元信息,是指描述其他信息的信息。 常用的实体报头域: Content-Encoding Content-Encoding实体报头域被使用作媒体类型的修饰符,它的值指示了已经被应用到实体正文的附加内容编码,因而要获得Content- Type报头域中所引用的媒体类型,必须采用相应的解码机制。Content-Encoding主要用语记录文档的压缩方法,下面是它的一个例子: Content-Encoding: gzip。如果一个实体正文采用了编码方式存储,在使用之前就必须进行解码。 Content-Language Content-Language实体报头域描述了资源所用的自然语言。Content-Language允许用户遵照自身的首选语言来识别和区分实体。 如果这个实体内容仅仅打算提供给丹麦的阅读者,那么可以按照如下的方式设置这个实体报头域:Content-Language: da。如果没有指定Content-Language报头域,那么实体内容将提供给所以语言的阅读者。 Content-Length Content-Length实体报头域用于指明正文的长度,以字节方式存储的十进制数字来表示,也就是一个数字字符占一个字节,用其对应的ASCII码存储传输。 要注意的是:这个长度仅仅是表示实体正文的长度,没有包括实体报头的长度。 Content-Type Content-Type实体报头域用语指明发送给接收者的实体正文的媒体类型。例如: Content-Type: text/html;charset=ISO-8859-1 Content-Type: text/html;charset=GB2312 Last-Modified Last-Modified实体报头域用于指示资源最后的修改日期及时间。 Expires Expires实体报头域给出响应过期的日期和时间。通常,代理服务器或浏览器会缓存一些页面。当用户再次访问这些页面时,直接从缓存中加载并显示给用 户,这样缩短了响应的时间,减少服务器的负载。为了让代理服务器或浏览器在一段时间后更新页面,我们可以使用Expires实体报头域指定页面过期的时 间。当用户又一次访问页面时,如果Expires报头域给出的日期和时间比Date普通报头域给出的日期和时间要早(或相同),那么代理服务器或浏览器就 不会再使用缓存的页面而是从服务器上请求更新的页面。不过要注意,即使页面过期了,也并不意味着服务器上的原始资源在此时间之前或之后发生了改变。 Expires实体报头域使用的日期和时间必须是RFC 1123中的日期格式,例如: Expires: Thu, 15 Sep 2005 16:00:00 GMT HTTP1.1的客户端和缓存必须将其他非法的日期格式(也包括0)看作已过期。例如,为了让浏览器不要缓存页面,我们也可以利用Expires实体报头 域,设置它的值为0,如下(JSP):response.setDateHeader("Expires",0);2.2.3.3 请求正文· 案例讲解Uid=2&cid=12.2.4 HTTP响应HTTP响应:也有三部分组成:状态行、消息报头和响应正文2.2.4.1状态行HTTP-Version Status-Code Reason-Phrase CRLF格式:HTTP-Version:协议版本Status-Code:表示服务器响应发回的响应代码Reason-Phrase:表示状态代码的文本描述示例:HTTP/1.1 200 OK (clrf)状态代码由3为数字组成:表示请求是否被理解或被满足。1xx: 指示信息表示请求已接受,继续处理2xx:成功表示请求已经被成功接收,理解、接受3xx:重定向要完成请求必须进行更进一步的操作。4xx:客户端错误请求有语法错误或请求无法实现5xx:服务器端错误服务器未能实现合法的请求2.2.4.2消息报头:2.2.4.3响应正文:比方说返回的一个页面。2.3应用程序体系结构三层:表示层、应用层/业务逻辑层和数据存取层2.3.1一层体系结构(所有组件包装在一个组件单元中)· 案例讲解Office系列,MP3播放器特点: 运行于单台计算机 高性能 编码简单缺点: 三合一,导致系统维护困难 数据无法共享然而:返璞归真也是有可能的!2.3.2二层体系结构特点: 数据存取的逻辑的代码与业务逻辑和表示逻辑分开,任何数据存取的交互都将通过业务层来完成。 实现了数据共享2.3.3三层体系结构“三层结构”是什么?“三层结构”一词中的“三层”是指:“表现层”、“中间业务层”、“数据访问层”。其中:n 表现层:位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。n 中间业务层:负责处理用户输入的信息,或者是将这些信息发送给数据访问层进行保存,或者是调用数据访问层中的函数再次读出这些数据。中间业务层也可以包括一些对“商业逻辑”描述代码在里面。n 数据访问层:仅实现对数据的保存和读取操作。数据访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。对依赖方向的研究将是本文的重点,数值返回方向基本上是没有变化的。2.4 Web应用程序2.4.1 体系结构注意:WEBINF目录下的内容对于Servlet代码是可见的,在Servlet代码中可以通过ServletContext对象中的方法getResource和getResourceAsStream()来访问。也可以通过RequestDispatcher调用。2.4.2开发过程q 设计目录结构q 编写 Web 应用程序代码q 编写部署描述符q 编译代码q 将 Web 应用程序打包q 部署 Web 应用程序q 执行 Web 应用程序2.4.3 在Jbuilder 2005中配置Tomcat1Servlet容器(也叫做Servlet引擎)是Web服务器或应用程序服务器的一部分,用于在发送请求和响应之上提供网络服务,解码基于MIME的请求,格式化基于MIME的响应。Servlet容器在Servlet的生命周期内包容和管理Servlet。2Tomcat介绍它是Apache软件基金会(Apache Software Foundation)的Jakarta项目的一个核心项目浏览器Web服务器Servlet容器Servlet实例Servlet实例3 容器功能:通信支持:利用容器提供的方法,你能轻松地让Servlet与Web服务器对话。你不用自己建立ServletSocket监听某个端口,创建流等等。容器知道自己与web服务器之间的协议。生命周期管理:多线程支持声明方式实现安全Jsp支持3本章总结10分钟4核点· 考核点1:get和post方法的有点和缺点? · 考核点2:5展部分 · 扩展部分1: 6员问题汇总 学员问题1:7 作业 习题1:练习 习题2:作业 习题3:

    注意事项

    本文(第一章 Java Web 应用程序概述.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开