Java Web常出现的错误
200:正常响应
404:找不到资源
405:请求方式不支持
500:服务器内部错误
webapp.xml
<!-- 返回到的实体类-->
<servlet>
<servlet-name>Servlet</servlet-name>
<servlet-class>com.servlet.UserIdServlet</servlet-class>
<!-- 启动速度 值越小启动越快-->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 映射文件-->
<servlet-mapping>
<!-- 通过映射反馈到实体类-->
<servlet-name>Servlet</servlet-name>
<!-- 网页提交到这-->
<url-pattern>/main</url-pattern> </servlet-mapping>
HTTP协议
1)Http 称之为 超文本传输协议
2)Http是无状态的
3)Http请求响应包含两部分:请求和响应
- 请求:
请求包含三个部分:1.请求行 ;2.请求消息头 ;3.请求主体
1)请求行包含是三个消息:1.请求的方式 ;2.请求的URL ;3.请求的协议(一般都是HTTP1.1)
2)请求消息头中包含了很多客户端需要告诉服务器的信息,比如:浏览器的型号、版本、我能接收的内容的类型、我给你发的内容的类型、内容的长度等等
3)请求体,三种情况
get方式,没有请求体
post方式,有请求体,form data
json格式,有请求体, request pauload
- 响应:
响应包含三本:1.响应行 ;2.响应头 ;3.响应体
1)响应行包含三个信息:1.协议 2.响应状态码(200)3.响应状态(ok)
2)响应头:包含了服务器的信息;服务器发送给浏览器的信息(内容媒体类型、编码、内容长度等)
3)响应主体:响应的实际内容(比如请求add.html页面时,相应的内容就是...)
HttpSession
1)HttpSession:表示 会话
2)为什么需要HttpSession,因为HTTP协议是无状态的,标记每一次请求
3)Session保存作用域:一次绘画范围都有效
void session.setAttribute(key,value)
object session.getAttribute(key,value)
4)其他的API:session.getId() , session.isNew() , session.getCreationTime() , session.invalidate() 强制关闭 等等
Servlet的生命周期:
1)Servlet接口:init() 初始化, service() 服务,destroy() 销毁
2)生命周期:实例化、初始化、服务、销毁
- Tomcat负责维护Servlet实例的生命周期
- 每个Servlet在Tomcat容器中只有一个实例,线程不安全
- Servlet的启动时间: 数值越小启动越快,最小是0
- Servlet3.0开始支持注解:@WebServlet
服务端转发和客户端重定向
1)服务器端转发:request.getRequestDispatcher("index.html").forward(request,response);
2)客户端重定向:response.sendRedirect("index.html");
保存作用域
原始情况下,保存作用域我们可以认为有四种:page(页面级别,现在几乎不用)、request、session、applocation
1)request:一次请求响应范围
2)session:一次会话范围有效
3)applocation:一次程序范围有效