• 让天下没有难学的技术
    多数学员都来自推荐,这就是口碑的力量

JavaWeb面试题(2)

3.Servlet相关技术路线(蓝线)
此部分包括: Servlet, Filter, Listener和HTTP协议

1.1. 解释一下什么是servlet?
答: 我们可以从下面二个方面去看Servlet:

API: 有一个接口Servlet, 它是Servlet规范中定义的用来处理客户端请求的程序需要实现的顶级接口
组件: 服务器端用来处理客户端请求的组件, 需要在xml请求中配置
1.2. 说一说Servlet的生命周期?
答: Servlet生命周期分为三个阶段:

1,初始化阶段 调用init()方法

2,响应客户请求阶段  调用service()方法-àdoGet/doPost()

3,终止阶段  调用destroy()方法

1.3. 区别请求的转发与重定向?
答: 可以从以下三个方面进行比较

1.地址栏:

转发: 显示的是请求的URL

重定向: 显示的不是请求的URL, 而是重定向指向的新的URL

2.浏览器发了几次请求?

转发: 1次请求

重定向: 2次请求

是否可以进行Request的数据共享?
转发: 两个资源之间是同一个request对象, 可以共享request中的数据

重定向: 两个资源之间不是同一个request对象, 不可以共享

经典现实案例:

1.1. HTTP请求的GET与POST方式的区别
答: 可以从以下几个方面去回答:

携带请求参数的方式
GET: 通过请求行携带参数, 参数会显示在地址栏

POST: 通过请求体来携带参数, 参数不会显示在地址栏

服务器端处理请求的方法
GET: 会调用Servlet的doGet()来处理请求

POST: 会调用Servlet的doPost()来处理请求

数据大小与安全性
GET: 大小有限制(小于2k), 不安全

POST: 大小没有限制, 安全

1.2. 比较一下Servlet与Filter
Filter是一种特别的Servlet, 它们的作用是完全不一样的. Servlet是用来处理请求的, 而Filter是用来过滤检查请求的.
经典现实案例:

假如我们要去坐地铁去天安门, 我们需要先在检票机上刷票后才能进站坐上地铁, 请求问: 在这个实际业务中, 哪个是Servlet?哪个是Filter呢?

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注