Servlet基础与HTTP协议
目录1:什么是Servlet2:手动实现Servlet程序3:配置Servlet常见错误4:Servlet的生命周期5:service分发请求(实现HttpServlet时默认分发)6:Servlet的层级关系7:ServletConfig类8:ServletContext9:HTTP协议10:常用的响应码说明11:MIME类型说明1:什么是Serv...
·
目录
5:service分发请求(实现HttpServlet时默认分发)
1:什么是Servlet
- Servlet是JavaEE规范之一,规范就是接口
- Servlet是JavaWeb三大组件之一,三大组件是Servlet程序,Filter过滤器,Listener监听器
- Servlet是运行在服务器上的程序,可以接收客户端发送的请求,并相应给客户端
2:手动实现Servlet程序
- 编写一个类去实现Servlet接口
- 实现service方法,处理请求,并响应数据
- 到web.xml中配置servler程序的访问地址(<servlet>和<Servlet Mapping>)
3:配置Servlet常见错误
- url-mapping中配置的路径没有以斜杠开头
- servlet-name配置的值不存在
- servlet-class全类名敲错
4:Servlet的生命周期
- 执行Servlet(一般继承HttpServlet类)的构造器方法
- 执行init初始化方法
- 执行Service方法
- 执行destory方法
- 第一二步在第一次访问时调用,第三步每一次访问调用,第四步在停止web工程时调用
5:service分发请求(实现HttpServlet时默认分发)
public void service(ServletRequest servletRequest,ServletResponse servletResponse) {
HttpServletRequest httpServletRequest = (HttpServletRequset)servletRequest;
String method = httpServletRequest.getMethod();
if("GET".equals(method)){
doGet();
}else if("POST".equals(method)){
doPost();
}
}
6:Servlet的层级关系

7:ServletConfig类
Servlet和ServletConfig对象都是由Tomcat负责创建,我们负责使用,Servlet程序默认第一次访问时候创建,ServletConfig是每个Servlet创建时,就创建一个ServletConfig对象。ServletConfig类作用:
- 可以获取Servlet程序的别名servlet-name的值
- 获取初始化参数init-param
- 获取ServletContext对象
8:ServletContext
- ServletContext是一个接口,它表示Servlet上下文对象
- 一个web工程,只有一个ServletContext对象实例
- ServletContext对象是一个域对象(可以像map一样存取数据,域指的是存取数据的操作范围,和map对照如下)

ServletContext作用:
- 获取web.xml中配置的上下文参数context-param(一个上下文参数,属于整个web工程)
- 获取当前的工程路径。格式:/工程路径
- 获取工程部署后在服务器硬盘上的绝对路径
- 像map一样存取数据
9:HTTP协议
- 客户端和服务端之间通信时,发送的数据需要遵守的规则,叫做Http协议。http协议中的数据又报文;
- 客户端给服务器端发送数据叫请求(get/post),服务器给客户端回传数据叫响应
- get请求的http协议内容如下

- post请求的http协议内容如下

- 区分get和post请求

- 响应的Http请求协议内容示例

10:常用的响应码说明
- 200:表示请求成功
- 302:表示请求重定向
- 304 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
- 403 (禁止) 服务器拒绝请求。
- 404:表示请求服务器已经收到,但是数据不存在(请求地址错误)
- 500:表示服务器已经收到请求,但是服务器内部错误(代码)
11:MIME类型说明

更多推荐



所有评论(0)