javaweb总结

上传人:第*** 文档编号:61631936 上传时间:2018-12-07 格式:PDF 页数:20 大小:551.67KB
返回 下载 相关 举报
javaweb总结_第1页
第1页 / 共20页
javaweb总结_第2页
第2页 / 共20页
javaweb总结_第3页
第3页 / 共20页
javaweb总结_第4页
第4页 / 共20页
javaweb总结_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《javaweb总结》由会员分享,可在线阅读,更多相关《javaweb总结(20页珍藏版)》请在金锄头文库上搜索。

1、Java Web 总结总结 1.Web 工作原理 2 1.1.HTTP 处理步骤2 1.2.HTTP 请求的组成2 1.3.HTTP 响应的组成3 1.4.理解 HTTP 无状态协议 3 1.5.CGI 与 Servlet 3 1.6.Servlet 的主要任务4 1.7.Web 容器 4 1.8.Java Web 应用程序的组成4 2.Servlet 基础. 4 2.1.Servlet 框架的组成4 2.2.Servlet 编码和部署5 2.3.Servlet URL 映射路径.5 2.4.Servlet 生命周期.6 2.5.ServletConfig 与 ServletContext6

2、3.HTTP 请求8 3.1.Servlet 与 Web 容器配合处理请求和响应.8 3.2.GET 与 POST 提交方式的区别8 3.3.获取 HTTP 协议请求行 8 3.4.获取 HTTP 协议请求头 9 3.5.获取表单数据.9 3.6.请求转发.9 3.7.请求范围对象绑定.9 4.HTTP 响应9 4.1.HTTP 状态行9 4.2.设置响应头.10 4.3.设置响应消息体.10 4.4.传输数据.10 4.4.1.传输文本数据 10 4.4.2.传输二进数据 10 4.4.3.请求重定向.10 5.Web 应用程序状态管理 11 5.1.Cookie.11 5.2.Sessio

3、n.11 5.3.URL 重写12 6.对象作用域与 Servlet 事件监听器.13 6.1.对象作用域.13 6.2.监听器.13 7.过滤器.15 8.JSP.15 8.1.JSP 运行机制:16 8.2.JSP 语法和语义16 8.2.1.JSP 脚本元素. 16 8.2.2.JSP 注释17 8.2.3.JSP 指令17 8.2.4.JSP 标准动作. 17 8.2.5.JSP 隐式对象. 17 9.Java Web 开发模式 18 9.1.MVC 模型.18 9.1.1.视图.18 9.1.2.模型.18 9.1.3.控制器.18 9.2.MVC 实现步骤 19 10.JSTL 与

4、 EL 表达式19 10.1.EL 表达式解释.19 10.2.在 EL 表达式中的隐式变量. 19 1. Web 工作原理工作原理 1.1. HTTP 处理步骤处理步骤 创建与服务器的连接 发送 HTTP 请求 接收客户端 HTTP 请求,生成 HTTP 响应回发 关闭与服务器的连接 1.2. HTTP 请求的组成请求的组成 请求行 请求头 空行 消息体 1.3. HTTP 响应的组成响应的组成 状态行 响应头 空行 消息体 1.4. 理解理解 HTTP 无状态协议无状态协议 主要是说,客户机的状态,服务器是不知道的。比如说,用户关掉浏览器,服务器 无法得知。只能向客户端提供静态网页内容 1

5、.5. CGI 与与 Servlet CGI:即通用网关接口(Common Gateway Interface) ,它可以用 Shell、Perl、C、 PHP、Python 等编写。每次请求就打开一个 CGI 进程,严重消耗服务器资源。极大地 限制了一个服务器可以支持的并发 CGI 用户数量,但是安全性高。 Servlet: Servlet 与 Web 容器被设计用来解决 CGI 的问题 , Java Servlet 的优点在于 它们的执行速度更快于 CGI 程序。各个用户请求被激活成单个程序中的一个线程,而 无需创建单独的进程,这意味着服务器端处理请求的系统开销将明显降低。Servlet

6、运 行在一个主进程或者一个父程序中,这就是为什么 Servlet 更高效的关键原因 。 1.6. Servlet 的主要任务的主要任务 读取客户端发送的显式和隐式数据 生成结果 向客户端发送显式数据(即文档)和隐式数据(HTTP 响应数据) 1.7. Web 容器容器 Web 容器负责管理和运行 Servlet ,容器对 Servlet 的支持包括 : 1.7.1.1.通信支持 1.7.1.2.生命周期管理 1.7.1.3.多线程支持 1.7.1.4.JSP 支持 1.7.1.5.处理安全性 1.8. Java Web 应用程序的组成应用程序的组成 配置文件 、静态 HTML 文件和 JSP

7、、类文件和包 。 2. Servlet 基础基础 2.1. Servlet 框架的组成框架的组成 Servlet 框架的核心是:javax.servlet.Servlet 接口,所有的 Servlet 都必须实现这一接口。 Servlet 框架是由 2 个 Java 包组成:javax.servlet 和 javax.servlet.http javax.servlet 包中定义了所有包中定义了所有 Servlet 类都必须实现的接口和类。类都必须实现的接口和类。 javax.servlet 包的接口为: ServletConfig 接口 - 在初始化过程中由 Servlet 容器使用 Ser

8、vletContext 接口 - 定义 Servlet 用于获取容器信息的方法 ServletRequest 接口 - 向服务器请求信息 ServletResponse 接口 - 响应客户端请求 Servlet 接口 - 定义所有 Servlet 必须实现的方法 javax.servlet 包中的类为: ServletInputStream 类 - 用于从客户端读取二进制数据 ServletOutputStream 类 - 用于将二进制数据发送到客户端 GenericServlet 类 - 抽象类,定义一个通用的,独立于底层协议的 Servlet。 javax.servlet.http 包中定

9、义了采用包中定义了采用 HTTP 通信的通信的 HttpServlet 类。类。 javax.servlet.http 包的接口为: HttpServletRequest 接口 - 提供 http 请求 HttpServletResponse 接口 - 提供 http 响应 HttpSession 接口 - 用于标识客户端并存储有关客户信息 HttpSessionAttributeListener 接口-实现这个侦听接口用户获取会话的属性列 表的改变的通知 javax.servlet.http 包中的类: HttpServlet 类 - 扩展了 GenericServlet 的抽象类,用于扩展

10、创建 Http Servlet 处理 Http 请求 Cookie 类 - 创建一个 Cookie,用于存储 Servlet 发送给客户端的信息 注意 javax.servlet 包和 javax.servlet.http 包的区别,javax.servlet.http 这个包里的类都去 实现了 javax.servlet 包里的接口,用于专门用于 HTTP 协议。 2.2. Servlet 编码和部署编码和部署 Servlet 体系结构:ServletGenericServletHttpServlet用户自定义的 Servlet 2.2.1.1.用户自定义的 Servlet 继承 HttpS

11、ervlet, 重写一下方法中的一个: doGet()和 doPost() 2.2.1.2.在容器中注册 Servlet ,配置 web.xml,在 web.xml 文件中加入 Hello com.lovo.servlet.Hello 2.2.1.3.映射虚拟路径,同样是通过配置 web.xml,在 web.xml 文件中加入 Hello /Hello 2.3. Servlet URL 映射路径映射路径 2.3.1.1.精确模式匹配。这种类型的模式用于将请求一对一映射到指定的 Servlet。 2.3.1.2.扩展名匹配“*.扩展名”。在这种情况下,所有以指定扩展名结尾的 URL 都转向指 定

12、的 Servlet。 2.3.1.3.路径映射。路径映射必须以/开始,以/*结尾,在这之间可以出现任意字符。路径 匹配通常用于将对某个目录的所有请求转向一个指定的 Servlet。 2.3.1.4.默认的 Servlet,/。默认的 Servlet 映射用于定义一个在没有给出路径信息时请求 转向的 Servlet。 2.4. Servlet 生命周期生命周期 Servlet 的生命周期由 Servlet 容器控制,该容器创建 Servlet 的实例。 Servlet 生命周期就是指创建 Servlet 实例后响应客户请求直至销毁的全过程。 Serlvet 生命周期的三个方法:init()ser

13、vice()destroy() Servlet 生命周期: 实例化:Servlet 容器创建 Servlet 类的实例对象,有两种方式,一种是容器检 测到需要这个 Servlet 来响应第一个请求时, 创建 Servlet 实例。另一种是容器启 动时创建 Servlet 实例,1,数字越小启动顺序越 靠前。 初始化:Servlet 容器调用 Servlet 的 init()方法 服务:容器调用 service()方法,根据请求的方式,调用 doGet 或者 doPost 方法 销毁:销毁实例之前调用 destroy()方法 2.5.ServletConfig 与与 ServletContext

14、 2.5.1.ServletConfig 与 ServletContext 的关系 一个 Servlet 对应一个 ServletConfig,也就是说容器加载了多少个 Servlet 就有多少 个 ServletConfig 。而 ServletContext 是在容器启动时创建,一个 Web 应用一个 ServletContext,可以把 ServletContext 看成是一个全局变量,所有的 Servlet 共享。 2.5.2.ServletContext 应用上下文 属于整个 Web 应用程序,可以访问到 Web 应用程序资源的本地输入流 ,把资源 的虚拟路径转换为物理路径 ,绑定一

15、个对象在整个 Web 应用程序中共享 。常用的方 法有: getRealPath():返回一个 web 资源的真实路径 getResourcePaths(path):返回一个指定路径下的所有资源列表 getResourceAsStream(path):返回一个资源的 InputStream getResource(path):返回一个 web 资源的 URL 地址 setAttribute(name,value):保存一个共享数据 getAttribute(name):提取共享数据 2.5.3.ServletConfig 通过重写有参数的init(ServletConfig config)方法

16、获取到 ServletConfig 对 象,通过 config.getInitParameter(“driver“)方法获取到 web.xml 里相对应的配置信息。 public void init(ServletConfig config) throws ServletException / TODO Auto-generated method stub config.getInitParameter(“driver“); super.init(config); Hello com.lovo.servlet.Hello driver Hello:com.mysql.driver.Driver 3. HTTP 请求请求 3.1. Servlet 与与 Web 容器配合处理请求和响应容器配合处理请求和响应 3.1.1.客户端向 Web 服务器发起一个 HTTP 请求。 3.1.2.HTTP 请求被 Web 服务器接受, 如果请求的是静态页面, 则由 Web 服务器负责处理。 如果请

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号