Servlet规范系列
securitit
由上至下深入
展开
-
Servlet规范系列 之 RequestDispatcher源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! RequestDispatcher称作请求分派器,包括foward和include两种分派方式,RequestDispatcher使得服务内两个Servlet间通信成为可能,下面让我们来详细介绍下RequestDispatcher的功能。 RequestDispatcher获取 可以通过ServletRequest.getRequestDispatcher(path)或HttpServletRequest.getRequestDis.原创 2020-08-18 22:20:02 · 4011 阅读 · 0 评论 -
Servlet规范系列 之 <filter>、<filter-mapping>配置详解
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 在Servlet2.x版本中,配置依然是通过web.xml的形式进行配置的,升级到Servlet3.x后,可以依赖注解式方式进行配置。 本文只对<servlet>、<servlet-mapping>进行分析解释。 XSD地址 可以从官方获取web.xml的XSD约束web-app_2_5.xsd,同时web-app_2_5.xsd依赖javaee_5.xsd、jsp_2_1.xsd、javaee_web_.原创 2020-08-18 22:15:48 · 8450 阅读 · 1 评论 -
Servlet规范系列 之 Filter源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 初识Filter Filter,即过滤器,在客户端和服务端间承担请求和响应过滤处理的角色。至于使用Filter的原因,开发的小伙伴可能已经达成共识,在Filter中,可以进行通用性的过滤处理。 客户端到服务端方向的过滤器,可以承担:URL权限校验及过滤、Http Method权限控制、请求数据过滤转换等等。只要是HttpServletRequest承载的信息,都可以作为过滤处理的依据。 服务端到客户端方向的过滤器,可以承担:过.原创 2020-08-18 22:07:16 · 3968 阅读 · 0 评论 -
Servlet规范系列 之 HttpSession事件分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! HttpSession的生命周期过程中,HttpSession的每次变动都可以进行监控,Servlet API提供了丰富的针对HttpSession的监听器: · HttpSessionListener:当HttpSession创建或销毁时触发相应的事件。 · HttpSessionActivationListener:当HttpSession钝化(序列化)或激活(反序列化)是触发相应的事件。 · HttpSessionAttr.原创 2020-08-17 00:03:24 · 4132 阅读 · 0 评论 -
Servlet规范系列 之 HttpSession源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 系列文章中《Servlet规范系列 之 Cookie源码分析》讲到Cookie,本文中的HttpSession是与Cookie对应的服务端技术,在服务端首次应答客户端请求时,会首先在服务端生成HttpSession,并存储在服务端存储中。然后将HttpSession的id放入响应头Set-Cookie中,跟随响应一起发送给客户端,客户端存储获得的Cookie,随下次请求一起发送给服务端。服务端根据Cookie中的id值查找对应的HttpSe.原创 2020-08-17 00:01:02 · 3807 阅读 · 0 评论 -
Servlet规范系列 之 Cookie源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 谈到Cookie,就得说到会话跟踪技术,在Web发展早期,Cookie是会话跟踪技术的不二选择,拥有统一的实现标准。在基于无状态的HTTP协议进行服务搭建时,如何保持更加安全、简便的保持会话,就成了首要问题,Cookie技术就应运而生了。 Cookie是由一个键和一个值构成的,由服务器创建,随着服务器响应发送给客户端浏览器。客户端浏览器会把Cookie保存下来,下一次访问服务器时把服务器发送的Cookie再发送给服务器。单独来说Cook.原创 2020-08-16 23:08:01 · 3772 阅读 · 1 评论 -
Servlet规范系列 之 ServletInputStream、ServletOutputStream源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! ServletInputStream和ServletOutputStream是Servlet规范API专门为ServletRequest和ServletResponse提供的输入和输出流。可以满足请求的读取和响应的写入。 ServletInputStream ServletInputStream只提供了readLine方法,可以满足针对请求的按行读取,源码如下:package javax.servlet;import java.原创 2020-08-16 23:06:53 · 7555 阅读 · 0 评论 -
Servlet规范系列 之 HttpServletResponseWrapper源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 实际应用场景中,有时可能会有这样的需求:需要在响应到客户端之前,对响应进行统一处理,增加或减少到达应用的数据量等,这时就可以创建一个类继承HttpServletResponseWrapper,它可以对HttpServletResponse进行再封装,然后之后的请求都会经过这个类,应用接收到的请求对象也会是这个类。 HttpServletResponseWrapper集成了ServletResponseWrapper,ServletRes.原创 2020-08-16 23:05:28 · 4678 阅读 · 0 评论 -
Servlet规范系列 之 HttpServletRequestWrapper源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 实际应用场景中,有时可能会有这样的需求:需要在请求进入应用之前,对请求进行统一处理,增加或减少到达应用的数据量,或者变换应用使用的HttpServletRequest的API,这时就可以创建一个类继承HttpServletRequestWrapper,它可以对HttpServletRequest进行再封装,然后之后的请求都会经过这个类,应用接收到的请求对象也会是这个类。 HttpServletRequestWrapper集成了Servl.原创 2020-08-16 23:02:40 · 4595 阅读 · 2 评论 -
Servlet规范系列 之 HttpServletResponse源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! HttpServletResponse是在ServletResponse基础上做的进一步封装,使得其更适用于基于HTTP的服务特性,在原有的ServletResponse API基础上增加了处理HTTP的操作。Servlet容器开发厂商会依据HttpServletResponse API进行具体实现,闲言少叙,接下来让我们看下源码。 HttpServletResponsepackage javax.servlet.http;imp.原创 2020-08-16 23:01:02 · 3890 阅读 · 0 评论 -
Servlet规范系列 之 HttpServletRequest源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! HttpServletRequest是在ServletRequest基础上做的进一步封装,使得其更适用于基于HTTP的服务特性,在原有的ServletRequest API基础上增加了处理HTTP的操作。Servlet容器开发厂商会依据HttpServletRequest API进行具体实现,闲言少叙,接下来让我们看下源码。 HttpServletRequestpackage javax.servlet.http;import j.原创 2020-08-16 22:59:39 · 4232 阅读 · 1 评论 -
Servlet规范系列 之 ServletResponse源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! ServletResponse由Servlet容器来管理,当客户请求到来时,容器创建一个ServletRequest对象,封装请求数据,同时创建一个ServletResponse对象,封装响应数据。这两个对象将被容器作为service()方法的参数传递给Servlet,Servlet利用ServletRequest对象获取客户端发来的请求数据,利用ServletResponse对象发送响应数据。 ServletResponse Se.原创 2020-08-16 22:58:02 · 3804 阅读 · 0 评论 -
Servlet规范系列 之 ServletRequest源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! ServletRequest由Servlet容器来管理,当客户请求到来时,容器创建一个ServletRequest对象,封装请求数据,同时创建一个ServletResponse对象,封装响应数据。这两个对象将被容器作为service()方法的参数传递给Servlet,Servlet利用ServletRequest对象获取客户端发来的请求数据,利用ServletResponse对象发送响应数据。 ServletRequest .原创 2020-08-16 08:25:00 · 4100 阅读 · 0 评论 -
Servlet规范系列 之 ServletContext源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! ServletContext是Servlet运行环境上下文,每个Web应用都有自己的一个ServletContext,这个对象是全局唯一的,而且项目内所有Servlet都共享这个对象。需要注意的是,分布式环境下,每个节点都有自己对应的ServletContext。 ServletContext 以下是对ServletContext源码做的注释,通过源码来看,ServletContext可以进行获取应用信息、Servlet版本信息、资.原创 2020-08-16 08:00:00 · 3800 阅读 · 0 评论 -
Servlet规范系列 之 ServletConfig源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 对于ServletConfig,按照字面意思理解来看,是Servlet的配置类。实际情况也的确如此,ServletConfig在服务中可以获得Servlet的配置信息。 ServletConfig源码package javax.servlet;import java.util.Enumeration;/** * Servlet配置对象.用于Servlet容器在Servlet初始化期间传递配置. */public inte.原创 2020-08-16 07:00:49 · 3794 阅读 · 0 评论 -
Servlet规范系列 之 <servlet>、<servlet-mapping>配置详解
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 在Servlet2.x版本中,配置依然是通过web.xml的形式进行配置的,升级到Servlet3.x后,可以依赖注解式方式进行配置。 本文只对<servlet>、<servlet-mapping>进行分析解释。 XSD地址 可以从官方获取web.xml的XSD约束web-app_2_5.xsd,同时web-app_2_5.xsd依赖javaee_5.xsd、jsp_2_1.xsd、javaee_web_.原创 2020-08-15 18:16:53 · 6827 阅读 · 2 评论 -
Servlet规范系列 之 Servlet源码分析
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! Servlet接口是Java Servlet API的核心抽象。所有Servlet类必须直接或间接的实现该接口,或者更通常做法是通过继承一个实现了该接口的类从而复用许多共性功能。目前有GenericServlet和HttpServlet这两个类实现了Servlet接口。大多数情况下,开发者只需要继承HttpServlet去实现自己的Servlet即可。 生命周期: · 加载和实例化。 · 初始化。 · 请求处理。 .原创 2020-08-14 23:50:44 · 3720 阅读 · 0 评论 -
Servlet规范系列 之 入门级简介
欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! 在进行Web开发过程中,都会直接或间接的接触到Servlet,比如最基本的基于Servlet的应用、基于Spring技术栈的应用。在依赖Spring技术栈进行开发时,Spring对Servlet进行了封装,所有前端请求统一经过DispatcherServlet,DispatcherServlet接收请求后根据自身规则和规范进行请求转发等。如果想更详细的了解Spring的技术内幕,可以查看本博《Spring 技术栈大全》系列文章,会从应用和源.原创 2020-08-14 23:46:51 · 4289 阅读 · 0 评论