![](https://img-blog.csdnimg.cn/e6b8375971554b94a50599b6944551e6.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java Servlet
文章平均质量分 89
Java Servlet API是Java Enterprise Edition(Java EE)规范的一部分,它定义了一组Java类和接口,用于开发基于Web的应用程序。Servlet API可以让Java开发人员在Web服务器上运行Java代码,以处理Web请求并生成Web响应。
swadian2008
不积跬步,无以至千里;不积小流,无以成江海
展开
-
Java Servlet 概述
Servlet 是 Java Web 应用程序的核心组件,主要用于处理 HTTP 请求和响应。Servlet API 中有 4 个 Java 包,包括:。包含定义 Servlet 与 Servlet 容器之间契约的类和接口。。包含定义 HTTP Servlet 与 Servlet 容器之间契约的类和接口。。包含对 Servlet、Filter 和 Listener 进行标注的注解。它还为标注元件指定元数据。。包含为 Web 应用程序的配置信息提供编程式访问的类型。原创 2023-04-18 09:10:54 · 1371 阅读 · 0 评论 -
Servlet 监听器:代码案例....修改中...
本节我们利用 Servlet 监听器接口,完成一个统计网站在线人数的案例。当一个用户登录后,显示欢迎信息,同时显示出当前在线人数和用户名单。当用户退出登录或 Session 过期时,从在线用户名单中删除该用户,同时将在线人数减 1。原创 2022-02-17 15:11:40 · 1848 阅读 · 0 评论 -
Servlet 监听器接口详解(Listener)
监听器 Listener 是一个实现特定接口的程序,它基于观察者模式实现,可以在程序运行时对事件进行监控和响应。分离关注点:将事件处理逻辑和业务逻辑分离,使程序更加模块化和易于维护。降低耦合性:将事件的产生和处理解耦,使程序更加灵活和可扩展。提高可重用性:监听器可以重复使用,减少代码冗余。提高程序响应速度:当事件发生时,监听器可以立即响应,提高程序响应速度。提高程序的可靠性:监听器可以对程序中可能发生的异常进行处理,提高程序的健壮性和可靠性。原创 2022-02-15 17:39:30 · 2373 阅读 · 0 评论 -
FilterConfig 接口(Servlet)...修改中...
Javax.Servet 包中提供了一个 FilterCofig 接口,它与 ServletConfig 接口相似,用于在过滤器初始化期间向其传递信息。FilterConfig 接口由容器实现,容器将它作为参数传入过滤器的 init() 方法中。通过 filterConfig 对象就可以获得 Filter 的初始化参数。在 FilterConfig 接口中,定义了 4 个方法,如下表。返回值类型 方法 描述 String getInitParameter(String na原创 2022-03-02 12:46:37 · 715 阅读 · 0 评论 -
FilterChain 过滤器链(Servlet)...修改中...
目录FilterChain 接口Filter 链的拦截过程Filter 链中 Filter 的执行顺序示例在 Web 应用中,可以部署多个 Filter,若这些 Filter 都拦截同一目标资源,则它们就组成了一个 Filter 链(也称过滤器链)。过滤器链中的每个过滤器负责特定的操作和任务,客户端的请求在这些过滤器之间传递,直到传递给目标资源。FilterChain 接口javax.servlet 包中提供了一个 FilterChain 接口,该接口由容器实现。容器将其实例对象原创 2020-03-23 20:02:43 · 6352 阅读 · 0 评论 -
Filter 过滤器接口详解
Override// 过滤器初始化代码@Override// 过滤器处理代码@Override// 过滤器销毁代码在上面的例子中,@WebFilter 注解指定了过滤器名称为 myFilter,过滤器的 URL 模式为 /hello/*,表示该过滤器会拦截所有以 /hello/ 开头的 URL。过滤器的处理逻辑在 doFilter() 方法中实现。@WebFilter 是用于在 Servlet 3.0 之后的版本中定义一个过滤器(Filter)。原创 2022-03-01 08:28:45 · 4505 阅读 · 2 评论 -
Servlet 会话管理详解(HttpSession、Token和Cookie)
会话(session)是指用户与服务器之间的一种交互模式,也称为服务器端会话(server-side session)或会话状态(session state)。在 Web 开发中,会话可以在用户登录网站时创建,并在用户退出或超时时结束。在会话期间,服务器可以在不同的页面之间共享数据,并跟踪用户的行为。会话的实现通常使用 session ID 来标识一个会话。原创 2022-03-01 08:27:25 · 2599 阅读 · 0 评论 -
Servlet 会话管理的四种方式
会话管理或会话追踪是 Web 应用程序开发中非常重要的一部分。这是因为 Web 语言 HTTP 是无状态的。在默认情况下,Web 服务器不知道一个 HTTP 请求是来自初次用户,还是来自之前已经访问过的用户。//进行会话管理的根本原因,Http是无状态的例如,Web Mail 应用程序要求其用户在查看邮件之前要先登录。但是,一旦用户输入正确的用户名和密码,用户在访问应用程序的其他部分时,就不应该再次提示他们登录。应用程序需要记住哪些用户已经登录成功。换句话说,它必须能够管理用户的会话。。原创 2022-03-01 08:26:12 · 454 阅读 · 0 评论 -
Servlet 重定向(带案例代码)
目录重定向的工作流程转发和重定向的区别response.sendRedirect()示例重定向属于客户端行为。服务器在收到客户端请求后,会通知客户端浏览器重新向另外一个 URL 发送请求,这称为请求重定向。它本质上是两次 HTTP 请求,对应两个 request 对象和两个 response 对象。重定向的工作流程重定向的工作流程如下:用户在浏览器中输入 URL,请求访问服务器端的 Web 资源。 服务器端的 Web 资源返回一个状态码为 302 的响应信息,该响应的含原创 2022-03-01 08:25:13 · 2755 阅读 · 0 评论 -
HttpServletResponse 接口详解
目录响应行相关的方法响应头相关的方法响应体相关的方法示例response 中文乱码问题使用字节流输出中文使用字符流输出中文在 Servlet API 中,定义了一个 HttpServletResponse 接口,它继承自 ServletResponse 接口。HttpServletResponse 对象专门用来封装 HTTP 响应消息,简称 response 对象。Servlet 容器会针对每次请求创建一个 response 对象,并把它作为参数传递给 Servlet 的转载 2022-02-11 16:14:26 · 2622 阅读 · 0 评论 -
Servlet 请求转发
目录请求转发RequestDispatcher 接口请求转发的工作原理请求转发的特点request 域对象示例Web 应用在处理客户端的请求时,经常需要多个 Web 资源共同协作才能生成响应结果。但由于 Serlvet 对象无法直接调用其他 Servlet 的 service() 方法,所以 Servlet 规范提供了 2 种解决方案:请求转发 请求包含(了解即可)下面我们主要对请求转发进行介绍。请求转发请求转发属于服务器行为。容器接收请求后,Servlet 会先转载 2022-02-11 15:20:09 · 2365 阅读 · 1 评论 -
ServletRequest 和 HttpServletRequest 接口详解
ServletRequest接口提供了通用的请求信息的访问方法,而HttpServletRequest接口主要是为了提供更多HTTP特定的请求信息,方便在开发中处理HTTP请求和响应。需要注意的是,在 Tomcat 8 中已解决了 get 方式提交请求中文乱码的问题,使用 Tomcat 8 及以上版本的同学不必再考虑此问题了,如果您使用的是 Tomcat 7 或更早的版本,出现乱码问题可以使用如下的方案解决。因此,URL是URI的一个子集,所有的URL都是URI,但不是所有的URI都是URL。原创 2022-02-11 10:57:17 · 5659 阅读 · 1 评论 -
ServletConfig接口详解
目录获得 ServletConfig 对象ServletConfig 接口配置和获取 Servlet 初始化参数Servlet 容器初始化 Servlet 时,会为这个 Servlet 创建一个 ServletConfig 对象,并将 ServletConfig 对象作为参数传递给 Servlet 。通过 ServletConfig 对象即可获得当前 Servlet 的初始化参数信息。一个 Web 应用中可以存在多个 ServletConfig 对象,一个 Servlet 只能对应一个原创 2022-02-09 17:31:48 · 2493 阅读 · 0 评论 -
ServletContext 接口详解和具体应用
MIME(Multipurpose Internet Mail Extensions)类型,也称为媒体类型(media type)或内容类型(content type),是一种标识数据类型的标准,用于指示在传输过程中需要处理的数据的类型。MIME类型通常与文件扩展名相关联,用于表示一个文件的类型。原创 2020-03-21 16:50:37 · 2680 阅读 · 1 评论 -
Servlet 的生命周期详解
在方法执行过程中,DispatcherServlet 会根据配置的 HandlerAdapter 对请求参数进行解析,将其转换为方法所需的类型,并将方法的执行结果封装为 ModelAndView 对象。在初始化阶段中,DispatcherServlet 会读取并解析配置文件(如 web.xml 或注解配置等),创建必要的组件对象(如 HandlerMapping、HandlerAdapter 等),并将它们存储在 ServletContext 中,以便于在后续的请求处理中使用。原创 2022-02-09 16:45:18 · 8163 阅读 · 0 评论 -
@WebServlet注解(Servlet注解)...修改中...
目录@WebServlet 注解的属性@WebServlet 注解的使用在 Servlet 中,web.xml 扮演的角色十分的重要,它可以将所有的 Servlet 的配置集中进行管理,但是若项目中 Servelt 数量较多时,web.xml 的配置会变得十分的冗长。这种情况下,注解(Annotation)就是一种更好的选择。与 XML 不同,注解不需要依赖于配置文件,它可以直接在类中使用,其配置只对当前类有效,这样就避免了集中管理造成的配置冗长问题。为了简化 Servlet 的配置,S转载 2022-02-08 13:24:02 · 3153 阅读 · 0 评论 -
Servlet三种创建方式...修改中...
目录Servlet、GenericServlet 、HttpServlet 的关系Servlet 接口GenericServlet 抽象类HttpServlet 抽象类总结在 Servlet 中,一个动态网页对应一个 Servlet 类,我们可以通过 web.xml 配置文件将 URL 路径和 Servlet 类对应起来。访问一个动态网页的过程,实际上是将对应的 Servlet 类加载、实例化并调用相关方法的过程;网页上显示的内容,就是通过 Servlet 类中的某些方法向浏览器输出转载 2022-02-07 15:54:25 · 1871 阅读 · 0 评论 -
快速创建一个 Servlet 应用程序
总结:以上是我们自定义的Servlet的实现,总体来说比较简单,但往往日常开发中,我们不会自己去实现它,这样做麻烦而且每个项目都会有诸多重复的逻辑,所以我们会借助第三方框架,使用第三方框架的代码实现,从而节省开发时间,提高开发效率,专注于企业的业务逻辑。创建web工程的完整目录(主要是明确web.xml文件位置,必须在WEB-INF文件夹下),参照下图文件结构,其中有许多需要注意的细节问题,后边会有所提及,另外图中的文件内容,下文会也会给出,请耐心往下看。原创 2020-03-21 11:57:24 · 1504 阅读 · 1 评论 -
Servlet 的应用程序设计
在该模型中,用一个 Servlet 或者过滤器充当控制器 Controller。所有现代的 Web 框架都是基于此模型实现的。像 Struts 1 和 Spring MVC 这类框架是在它们的 MVC 架构中使用一个 Servlet Controller,而另一个流行的框架:Struts 2,则是使用过滤器。应用程序架构,MVC(Model-View-Controller)设计模式。原创 2021-12-30 11:18:40 · 971 阅读 · 7 评论