欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaWeb面试题2020(15题)

程序员文章站 2024-03-23 20:53:46
...

前言:

作者:CodeCow · 阿牛,微信搜索公众号 “CodeCow ”,我们一起干“java

正文:

1、网络编程首先要解决什么问题?

(1)如何准确的定位网络上的一台或者多台主机

(2)找到主机后如何可靠的进行有效的数据传输

2、分别说说OSI/RM模型和TCP/IP模型分别指的什么?

OSI/RM模型指:

物理层、数据链路层、网络层、传输层、会话层、表示层、应用层

TCP/IP模型指:

网络接口层、网络层、传输层、应用层

3、说说OSI/RM各层使用的协议是什么?

(1)应用层:HTTP-超文本传输协议

(2)传输层:TCP、UDP协议

         TCP:面向连接的可靠的协议,比UDP多了一个建立连接的时间

         UDP:无连接不可靠协议,有大小限制,64KB以内,传输效率高          

4、Http是有状态还是无状态的协议 ?

Http是一个基于请求/响应模式的,无状态的协议

5、Http请求由什么组成 ?

请求头,消息报头,请求正文

6、Http请求方法有哪几种 ?有什么区别?

2种;
GET、POST

区别:

  • GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连;POST 把提交的数据则放置在是HTTP包的包体中
    example:login.action?name=zhagnsan&password=123456
  • POST的安全性要比GET的安全性高。
  • Get 是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求,在FORM(表单)中,Method默认为"GET",实质上GET和POST只是发送机制不同,并不是一个取一个发。

7、Http响应由什么组成 ?

状态行,消息报头,响应正文

8、Http中重定向和请求转发的区别 ?

(1)重定向是客户端行为,请求转发是服务端行为

(2)重定向:两次请求两次响应,浏览器地址发生变化,可以访问自己web之外的资源,传输的数据会丢失

(3)请求转发:一次请求一次响应,浏览器地址不会发生变化,访问的是自己本身的web资源,传输数据不会丢失

总结:

  • 重定向的特点:redirect
    1. 地址栏发生变化
    2. 重定向可以访问其他站点(服务器)的资源
    3. 重定向是两次请求。不能使用request对象来共享数据
  • 转发的特点:forward
    1. 转发地址栏路径不变
    2. 转发只能访问当前服务器下的资源
    3. 转发是一次请求,可以使用request对象来共享数据

9、Cookie 和 Session特点是什么? 区别 ?

Cookie 特点:

  • cookie存储数据在客户端浏览器
  • 浏览器对于单个cookie 的大小有限制(4kb) 以及 对同一个域名下的总cookie数量也有限制(20个)

Session 特点:

  • session用于存储一次会话的多次请求的数据,存在服务器端
  • session可以存储任意类型,任意大小的数据

session与Cookie的区别:

  1. session存储数据在服务器端,Cookie在客户端
  2. session没有数据大小限制,Cookie有
  3. session数据安全,Cookie相对于不安全

10、说说Servlet的生命周期?

Servlet的生命周期:
实例化——>初始init——>接收请求service——>销毁destroy;

11、Jsp内置对象有几个?分别是什么?

9个

  • pageContext :当前页面共享数据,还可以获取其他八个内置对象
  • request:一次请求访问的多个资源(转发)
  • session:一次会话的多个请求间
  • application :所有用户间共享数据
  • response:响应对象
  • page:当前页面(Servlet)的对象 this
  • out: 输出对象,数据输出到页面上
  • config: Servlet的配置对象
  • exception:异常对象

12、Servlet和Jsp有什么区别?

(1)jsp是html页面中内嵌Java代码,侧重于页面展示

(2)Servlet是html和Java代码分离,侧重于逻辑控制

13、Web有几大组件?分别是什么?

3大组件
Servlet
Filter:过滤器
Listener:监听器

14、在单点登录中,如果cookie被禁用了怎么办?

单点登录原理:后端生成一个sessionID,然后设置到cookie,后面的所有请求浏览器都会带上cookie,然后服务端从cookie里获取sessionID,再查询到用户信息。
解决方案:从原理可以发现,保持登录的关键不是cookie,而是通过cookie保存和传输的sessionID,其本质是能获取用户信息的数据。因此,除了cookie,还通常使用HTTP请求头来传输。但是这个请求头浏览器不会像cookie一样自动携带,需要手工处理。

15、Http常见的状态码有哪些?

1XX:指示信息-表示请求已经接收,继续处理

2XX:成功-表示请求已经被成功接收,理解

3XX:重定向-要完成必须进行进一步操作

4XX:客户端错误-请求无法实现或请求语句错误

5XX:服务端错误-服务器未能实现合法请求

example:

200:OK-客户端请求成功

301:资源(网页等)被永久转移到其它URL

302:临时移动,(重定向)

400:客户端请求有语法错误,不能被服务器所理解

401:请求未经授权

403:接收到请求但是拒绝服务

404:请求资源不存在

500:服务器发生了不可预期的错误

503:服务器当前不能处理客户端请求,一段时间之后可能恢复正常

后记

从Java基础—>SpringCloud面试题的详细答案,已经整理成PDF文档

JavaWeb面试题2020(15题)

★★ 小声BB ★★

若有需要PDF的小伙伴,可以微信搜索公众号 “CodeCow”,回复:2020青铜 小编直接发百度网盘

也可以加小编微信:CodeCow-6666 私信小编

坚持,因为我是阿牛