【3】进大厂必须掌握的面试题-Java面试-Servlet

开心罗汉
• 阅读 143

Servlet面试问题

Q1。什么是servlet?

  • Java Servlet是服务器端技术,通过提供对动态响应和数据持久性的支持来扩展Web服务器的功能。
  • javax.servlet和javax.servlet.http包提供用于编写我们自己的servlet的接口和类。
  • 所有servlet必须实现javax.servlet.Servlet接口,该接口定义了servlet生命周期方法。在实现通用服务时,我们可以扩展Java Servlet API随附的GenericServlet类。HttpServlet类提供用于处理特定于HTTP的服务的方法,例如doGet()和doPost()。
  • 大多数时候,使用HTTP协议访问Web应用程序,这就是为什么我们主要扩展HttpServlet类的原因。Servlet API层次结构如下图所示。

【3】进大厂必须掌握的面试题-Java面试-Servlet

Q2。Get和Post方法之间有什么区别?

GetPost
可以发送的数据量有限,因为数据是在标头中发送的。因为数据是在体内发送的,所以可以发送大量数据。
不安全,因为数据显示在URL栏中。由于数据未显示在URL栏中而被保护。
可以收藏无法收藏
幂等非等幂的
比Post更有效和使用它效率较低且使用过

Q3。什么是请求分派器?

RequestDispatcher接口用于将请求转发到另一个资源,该资源可以是HTML,JSP或同一应用程序中的另一个servlet。我们还可以使用它来将另一个资源的内容包括到响应中。

此接口中定义了两种方法:

1.void forward()

2.void include()

【3】进大厂必须掌握的面试题-Java面试-Servlet

【3】进大厂必须掌握的面试题-Java面试-Servlet

Q4。forward()方法和sendRedirect()方法之间有什么区别?

forward()方法SendRedirect()方法
forward()将相同的请求发送到另一个资源。sendRedirect()方法始终发送新请求,因为它使用浏览器的URL栏。
forward()方法在服务器端起作用。sendRedirect()方法在客户端起作用。
forward()方法仅在服务器内起作用。sendRedirect()方法可在服务器内部和外部使用。

Q5。Servlet的生命周期是什么?

Servlet的生命周期包括五个阶段:【3】进大厂必须掌握的面试题-Java面试-Servlet

  1. Servlet已加载
  2. Servlet实例化
  3. Servlet已初始化
  4. 服务请求
  5. Servlet被销毁

Q6。Cookies在Servlet中如何工作?

  • Cookies是服务器发送到客户端的文本数据,并保存在客户端本地计算机上。
  • Servlet API通过实现Serializable和Cloneable接口的javax.servlet.http.Cookie类提供cookie支持。
  • 提供HttpServletRequest getCookies()方法可从请求中获取Cookie数组,因为没有必要在请求中添加Cookie,所以没有方法可以设置或向请求添加Cookie。
  • 类似地,提供了HttpServletResponse addCookie(Cookie c)方法来在响应头中附加cookie,没有用于cookie的getter方法。

Q7。ServletContext与ServletConfig有什么区别?

Servlet JSP中的ServletContext和ServletConfig之间的区别在于以下表格格式。

ServletConfigServletContext
Servlet配置对象代表单个Servlet它代表了在特定JVM上运行且对所有servlet通用的整个Web应用程序
与特定servlet相关的类似本地参数与整个应用程序关联的类似全局参数
这是在web.xml文件的servlet部分内定义的名称值对,因此它具有servlet范围ServletContext具有广泛的应用范围,因此请在web.xml文件的servlet标记之外定义。
getServletConfig()方法用于获取配置对象getServletContext()方法用于获取上下文对象。
例如用户的购物车是特定于特定用户的,因此在这里我们可以使用servlet config为了获得文件或应用程序会话的MIME类型,使用servlet上下文对象存储相关信息。

Q8。Servlet中的会话管理有哪些不同的方法?

会话是客户端和服务器之间的会话状态,它可以包含客户端和服务器之间的多个请求和响应。由于HTTP和Web Server都是无状态的,因此维护会话的唯一方法是在每次请求和响应中在服务器和客户端之间传递有关会话的某些唯一信息(会话ID)时。

Servlet中会话管理的一些常见方式是:

  1. 用户认证
  2. HTML隐藏字段
  3. Cookies
  4. URL重写
  5. 会话管理API

【3】进大厂必须掌握的面试题-Java面试-Servlet

欢迎关注 Java架构师社区公众号.
本文转载自Java架构师必看 ,更多内容点击查看!
点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
4年前
java ee后台运行原理(Servlet)
剖析Servlet:(1)概述:  Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的web页面。它担当Web浏览器或其他http客户程序发出请求、与http服务器上的数据库或应用程序之间交互的中间层。  Servlet是用Java编写的Server端程序,它与协议和平台无关。Servlet运行于Java服务器中
Wesley13 Wesley13
4年前
javaWeb 学习总结(一) Tomcat的安装与eclipse集成
一、Tomcat的下载和安装    在市场上有许多Web服务器支持Servlet。有些Web服务器是免费下载的,Tomcat就是其中的一个。ApacheTomcat是一款JavaServlet和JavaServerPages技术的开源软件实现,可以作为测试Servlet的独立服务器,而且可
Wesley13 Wesley13
4年前
Java Servlet基本方法介绍
JavaServlet基本方法介绍JavaServlet开发工具(JSDK)提供了多个软件包,在编写Servlet时需要用到这些软件包。其中包括两个用于所有Servlet的基本软件包:javax.servlet和javax.servlet.http。可从sun公司的Web站点下载JavaServlet开发工具。下面主要介绍
Wesley13 Wesley13
4年前
JavaWeb杂述
一、常用动态web资源开发技术:   JSP/Servlet、ASP、PHP等   JSP/Servlet是sun公司开发的JavaWeb技术   PHP是开源组织提供的。二、学习JavaWeb,首先需要安装一台Web服务器;  2.1、什么是Web服务器    用户通过浏览器访问服务器中的一套网络程序,服务器中的这套网络程序处理用户
Stella981 Stella981
4年前
Servlet概述
一、Servlet概述1.sun公司提供的动态web资源开发技术。本质是上一段java小程序,要求这个小程序必须实现Servlet接口,以便服务器能够调用。2.开发Servlet的两个步骤实验:Servlet的快速入门(1)步骤一:写一个java程序实现Servlet接口(此处直接继承了默认
Easter79 Easter79
4年前
Tomcat的工作模式
Tomcat作为Servlet容器,有3种工作模式:独立的Servlet容器、进程内的Servlet容器和进程外的Servlet容器。1.独立的Servlet容器   独立的Servlet容器是Tomcat的默认模式。在这种模式下,Tomcat可以作为独立的JavaWeb服务器,Servlet容器作为构成Web服务器的一部分而存在。2.进
Wesley13 Wesley13
4年前
Java面试之Java Web
64\.JSP和servlet有什么区别?JSP是servlet技术的扩展,本质上就是servlet的简易方式。servlet和JSP最主要的不同点在于,servlet的应用逻辑是在Java文件中,并且完全从表示层中的html里分离开来,而JSP的情况是Java和html可以组合成一个扩展名为JS
Stella981 Stella981
4年前
Servlet容器,过滤器,拦截器,监听器整理
Servlet容器JavaServlet是与平台无关的服务器端组件,运行于Servlet容器中(如Tomcat),Servlet容器负责Servlet和客户端的通信以及调用Servlet的方法,Servlet和客户端的通信采用“请求/响应”的模式。Servlet可完成以下功能:1、创建并返回基于客户请求的动态HTML页面。2、创建可以嵌入到
Stella981 Stella981
4年前
Servlet知识小结
什么是Servlet?Servlet是运行于web服务器中的一个特殊java应用小程序,能够接受来自每个客户端的请求并给予响应,双方遵循http协议。Servlet是做什么的?1能够接收客户端的HTTP的请求,并给予不同的响应,即动态响应。2能做一些需要动态显示的Web资源内容。可自行查看JAVA的API了解Servlet、Gene
Wesley13 Wesley13
4年前
Java后台开发Servlet学习(一)
一、Servlet介绍  开始接触一个新的东西,首先要知道它是干什么的吧。Servlet(ServerApplet)是JavaServlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。我自己的理解就是对客户端或者浏览器发送的请求进行处理,作出相应的响应。其过程如下:
Stella981 Stella981
4年前
Introduction of Servlet Filter(介绍javaweb组件之一过滤器filter)
javaweb的三大组件都需要交给web服务器运行,都需要在web.xml文件中配置。①Servlet:javax.servlet.Servlet通过http协议接受客户端的请求,并作出响应的Java应用程序②Filter过滤器:javax.servlet.Filter是一个接口,实现请求的拦截和放行,并可添加新功能,达到过滤请求的作用③list