一、http协议
1、HTTP为无状态短连接协议。
无状态:服务器接收浏览器发过来的request,处理完数据之后,不会保留记录。
一次请求一次响应:浏览器发送请求数据包,服务器拿到请求返回响应后,断开连接。
HTTP协议不适合游戏开发。
2、HTTP 请求
组成:
请求行 Get Http/1.1 /da.html(请求方式、http协议号、请求的内容)
多个消息头:告诉服务器有关浏览器本次请求的信息
空行
3、HTTP响应
组成:
状态行 响应的状态值、http协议号
多个消息头:告诉浏览器服务器本次响应的信息
空行
响应body
二、Servlet
1、什么是Servlet
服务端技术,用于接收浏览器端的请求,处理请求,返回响应内容。
Servlet必须要在容器中(Tomcat)才能被容器调用执。
2、Servlet的架构图
3、Servlet的生命过程
服务器启动后,当有请求到达容器,容器初始化Servlet,随后servlet调用响应的doGet/doPost方法处理请求,当关闭容器时,servlet对象被销毁(destroy( ))。
4、实际编码过程
public class ChServlet extends HttpServlet { /** * 处理get请求 * @param req * @param resp * @throws ServletException * @throws IOException */ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("处理doGet请求"); } /** * 处理post请求 * @param req * @param resp * @throws ServletException * @throws IOException */ @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doPost(req, resp); } }
<web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>ChServlet</servlet-name> <servlet-class>com.zhoujie.servlet.ChServlet</servlet-class> </servlet> </servlet-mapping> <servlet-mapping> <servlet-name>ChServlet</servlet-name> <url-pattern>/ChServlet</url-pattern> </servlet-mapping> </web-app>
当浏览器访问localhost:8080/项目名/ChServlet时,控制台输出