1、四大作用域
- page:当前页面有效,跳转后无效。这是作用域中最小的范围,仅在当前页面中有效。
- request:一次请求有效,请求转发会携带数据,重定向不会携带数据。这是在一次HTTP请求中有效的范围,常用于在请求的不同阶段(如过滤器、Servlet和JSP之间)传递数据。
- session:会话有效,从用户打开浏览器到关闭浏览器有效,服务器关闭也会失效。这是在用户与服务器之间的会话期间有效的范围,常用于跨多个页面或请求跟踪用户状态。
- application:整个web应用有效,从服务器启动到服务器关闭。这是在整个Web应用程序中有效的范围,常用于存储全局数据,如配置信息等。
2、九大内置对象(Implicit Objects)
- request:HttpServletRequest对象,代表客户端的请求。它提供了访问请求头、请求参数等的方法。
- response:HttpServletResponse对象,代表服务器的响应。它提供了向客户端发送响应头、响应体等的方法。
- pageContext:PageContext对象,提供了对JSP页面所有功能(如四大作用域、九大内置对象等)的访问。它还提供了访问其他内置对象的方法,以及向其他作用域存储和检索数据的方法。
- session:HttpSession对象,表示用户与服务器之间的一次会话。它常用于存储用户会话期间的数据。
- application:ServletContext对象,代表整个Web应用程序。它常用于存储全局数据,如配置信息等。
- out:JspWriter对象,用于向客户端发送输出。它类似于Servlet中的PrintWriter对象。
- config:ServletConfig对象,用于访问Web应用程序的配置信息。它通常用于读取在web.xml文件中配置的初始化参数。
- page:Object对象,代表当前JSP页面本身(实际上是一个Servlet)。它通常不直接使用。
- exception:Throwable对象,用于处理JSP页面中的异常。它仅在JSP页面作为错误页面(使用<%@ page isErrorPage="true" %>指令)时可用。
3、常见响应状态码
3.1简介
- 在JSP(JavaServer Pages)中,响应状态码是由底层的HTTP服务器(如Tomcat)生成的,用于表示HTTP请求的处理结果。
- 这些状态码遵循HTTP协议规范,与Servlet和JSP的具体实现有关,但并非直接由JSP页面本身生成。
- HTTP状态码分为五类,由三位数字组成,每一位都有特定的含义
3.2状态码及含义
3.2.1 1xx(信息性状态码):接收的请求正在处理。
- 100 Continue:继续。客户端应继续其请求。
- 101 Switching Protocols:切换协议。服务器根据升级头部切换协议。
3.2.1 2xx(成功状态码):请求已成功被服务器接收、理解、并接受。
- 200 OK:请求成功。一般用于GET与POST请求。
- 201 Created:已创建。成功请求并创建了新的资源。
- 202 Accepted:已接受。已经接受请求,但处理尚未完成。
- 204 No Content:无内容。服务器成功处理,但未返回内容。
3.2.3 3xx(重定向状态码):需要后续操作才能完成此请求。
- 301 Moved Permanently:永久移动。请求的资源已被永久的移动到新URI,今后任何对此资源的引用都应该使用本响应返回的若干个URI之一。
- 302 Found:临时移动。请求的资源临时从不同的URI响应请求。
- 304 Not Modified:未修改。所请求的资源未修改,自上次请求以来,请求的文档内容并未改变。
3.2.4 4xx(客户端错误状态码):请求包含错误语法或无法完成请求。
- 400 Bad Request:客户端请求的语法错误,服务器无法理解。
- 401 Unauthorized:请求要求身份验证。
- 403 Forbidden:服务器理解请求客户端的请求,但是拒绝执行此请求。
- 404 Not Found:服务器无法根据客户端的请求找到资源(网页)。
3.2.5 5xx(服务器错误状态码):服务器在处理请求时发生了错误。
- 500 Internal Server Error:服务器内部错误,无法完成请求。
- 502 Bad Gateway:作为网关或代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。
- 503 Service Unavailable:由于超载或停机维护,服务器目前无法处理请求。