Servlet面试题梳理

本文详细梳理了Servlet的面试重点,包括Servlet的定义、生命周期、GET和POST请求的区别、请求转发和重定向的原理及差异。此外,还涉及了JSP的相关知识,如JSP与Servlet的联系与区别、Session对象的生命周期、web开发的四个作用域(Application、Page、Request、Session)、Cookie与Session的区别。同时,介绍了过滤器Filter和监听器Listener的概念及其生命周期,以及EL表达式和AJAX的应用。
摘要由CSDN通过智能技术生成

一、Servlet

1.什么是Servlet

  • servlet主要用于逻辑处理,处理完之后,将结果交给jsp,由jsp向客户端做出响应

2、servlet生命周期是什么

(1)服务器启动时创建
  • 在客户端第一次访问LoginServlet时创建,
  • 只被调用一次,只创建一个servlet对象 单实例的
(2)初始化
  • 在对象创建后,构造方法执行后,服务器调用init方法,完成一些初始化操作
  • 只执行一次,如果没有写初始化操作可以不用重写init(),
  • 但是服务器仍然会调用父类中的init()
(3)提供服务器
  • 每次请求都会调用service,只执行一次
(4)关闭
  • 在服务器关闭前,servlet销毁前调用,
  • 可以在次方中完成最终操作
  • 列如:保存日志,数据备份

3.get和post请求的区别是什么

  • get请求
    • 主要用于从服务器获取数据
    • 也可以向服务器发送数据,数据在地址中传递,会在地址中显示
    • 但是长度有限制
    • 所以不安全
  • post请求
    • 主要用于向服务器发送请求
    • 提交数据在请求中发送,
    • 长度没有限制(例如:可以提交文件)
    • 数据在请求体中相对安全

4.什么是请求转发和重定向

(1)请求转发request
  • 获得请求转发对象
  • 告诉对象转发的地址
(2)重定向response
  • 重新指定浏览器地址
(3)请求转发和重定向的区别
  • 请求转发
    • 整个过程属于一次请求
    • 浏览器中的地址不发生变化,转发的动作在服务器内部完成
    • 客户端不知情
  • 重定向
    • 整个过程有俩次请求,地址栏的地址会发生变化
    • 在第二次请求中不能获得上一次请求对象中的数据

二、JSP

1.jsp和servlet的联系与区别

  • 本质都是servlet
  • 一个侧重于逻辑处理
  • 一个侧重于视图显示

2.说一说静态包含和动态包含的区别

  • include
    • include用来静态包含其他页面
    • 编译时,将俩个jsp文件合二为一,编译为一个servlet文件
  • jspinclude
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值