Java面试题七

这篇博客包含了Java面试中常见的题目,涉及Web应用程序结构、Servlet生命周期、会话跟踪技术以及JSP的相关知识点。例如,讨论了WEB-INF目录的结构,Servlet的init()和destroy()方法,Cookie、Session和URL重写在会话跟踪中的作用,以及JSP的动态和静态引入。同时提到了context-param和init-param的区别,并简单介绍了自定义标签IterationTag。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(此系列试题来源于Java面试宝典书籍)  

一、不定向选择题

1. 关于Web应用程序,下列说法错误的是

  • A. WEB-INF 目录存在于 web 应用的根目录下
  • B. WEB-INF 目录与 classes 目录平行
  • C. web.xml 在 WEB-INF 目录下
  • D. Web 应用程序可以打包为 war 文件

2. 有关servlet的生命周期说法正确的是

  • A. Servlet 的生命周期由 Servlet 实例控制
  • B. init()方法在创建完 Servlet 实例后对其进行初始化,传递的参数为实现 ServletContext 接口的对象
  • C. service()方法响应客户端发出的请求
  • D. destroy()方法释放 Servlet 实例

解析

  • Servlet 的生命周期是由 Servlet 容器(Tomcat 就是常见的 Servlet 容器)管理的,因此A不对
  • Servlet 中的 init()方法有两个重载,一个是空参的,另外一个是带 ServletConfig 形参的,而不是ServletContext,因此 b 不对
  • 关于 d 选项,说法其实并不好,正确的表达应该是因为 Servlet 实例要释放(销毁)了,才会先调用 destroy()方法。

3. 关于会话跟踪技术说法正确的是

  • A. Cookie 是 Web 服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端
  • B. 关闭浏览器意味着会话 ID 丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期
  • C. 在禁用 Cookie 时可以使用 URL 重写技术跟踪会话
  • D. 隐藏表单域将字段添加到 HTML 表单并在客户端浏览器中显示

解析:

会话跟踪常用的四种方法

  • URL重写:就是在URL结尾添加一个附加数据以标识该会话,把会话ID通过URL的信息传递过去,以便在服务端进行识别不同的用户
  • 隐藏表单域:将会话ID添加到HTML表单元素中提交到服务器,此表单不再客户端显示
  • cookie:Cookie是Web服务器发送给客户端的一小段信息,客户端请求时可以读取该信息发送到服务器端,进而进行用户的识别。对于客户端的每次请求,服务器都会将Cookie发送到客户端,在客户端可以进行保存,以便下次使用
  • session:在服务器端会创建一个session对象,产生一个sessionID来标识这个session对象,然后将这个sessionID放入到Cookie中发送到客户端,下一次访问时,sessionID会发送到服务器,在服务器端进行识别不同的用户 , Session是依赖Cookie的,如果Cookie被禁用,那么session也将失效

4. context-param和init-param的区别与作用

https://www.cnblogs.com/hzj-/articles/1689836.html   作者:青春乐园

6. JSP写java代码

<%   %>包裹java代码,获取值<%=i%>

7. 一个jsp引入另一个jsp

  • <jsp:include page=”test2.jsp” />属于动态引入:是在翻译阶段执行(将 JSP 页面转换成 servlet 的阶段)。通俗的话讲就是先合并在一起,然后再编译成一个 Servlet 文件,是纯粹的把部分代码写到了另一页面(或者说是共享),而那另一页面中不能有相同的变量名,但可以借用主页面的内容

  • <%@ include file=”test2.jsp” %>属于静态引入:在请求处理阶段执行。通俗的话讲就是先各自编译,然后在处理请求的时候结果再合并到一起   引入执行页面或 servlet 所生成的应答文本       

8. 自定义标签:IterationTag

9. Linux使用mount命令加挂计算器的非Linux文件系统

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

JSP100选择题 适合考前练习 1 J2EE 中,()类的()方法用于创建对话。(选择一项) a) HttpServletRequest、getSession b) HttpServletResponse、newSession c) HtttpSession、newInstance d) HttpSession、getSession 2 给定一个 Servlet 的doGet方法中的代码片段,如下: request.setAttribute(“name”,”zhang”); response.sendRedirect(“http://localhost:8080/servlet/MyServlt”); 那么在 MyServlet 中可以使用()方法把属性 name的值取出来。(选择一项) a) String str=request.getAttribute(“name”); b) String str=(String)request.getAttribute(“name”); c) Object str=request.getAttribute(“name”); d) 无法取出来 3.在Servlet里,能实现重定向的方法有()。(选择两项) A.运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法 B.运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法 C.运用javax.servlet.RequestDispatcher接口的forward方法 D.运用javax.servlet.ResponseDispatcher接口的forward方法 4.利用MyEclipse开发Servlet,下列说法正确的是( )。(只选两项) A. MyEclipse可自动产生web.xml B. MyEclipse不能自动产生web.xml,需要手工编写 C.可利用MyEclipse自带的Tomcat作为Servlet容器 D. MyEclipse没有自带Tomcat,需要自己安装配置。 5.编写Servlet 的doPost方法时,需要抛出异常为()。(只选一项) A.ServletException, IOException B.ServletException, RemoteException C.HttpServletException, IOException D.HttpServletException, RemoteException 6.有关会话跟踪技术描述正确的是()。(选择三项) A.Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端 B.关闭浏览器意味着会话ID丢失,但所有原会话关联的会话数据仍保留在服务器上,直至会话过期 C.在禁用Cookie时可以使用URL重写技术跟踪会话 D.隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示 …………
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值