Java面试题以及答案--Web部分
1.网络通讯部分
1.1 TCP 与 UDP 区别? (了解)
TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、 基于IP的传输层协议。
UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
TCP和UDP都是来自于传输层的协议。传输层位于应用层和网络层之间,负责位于不同主机中进程之间的通信。
TCP 与 UDP 区别
1.TCP基于连接UDP无连接
2.TCP要求系统资源较多,UDP较少
3.TCP保证数据正确性,UDP可能丢包
4.TCP保证数据顺序,UDP不保证
1.2什么是HTTP协议?
客户端和服务器端之间数据传输的格式规范,格式简称为“超文本传输协议”。
是一个基于请求与响应模式的、无状态的、应用层的协议,基于 TCP 的连接方式
1.3 TCP的三次握手
为了准确无误地把数据送达目标处,TCP协议采用了三次握手策略。 】
为什么要三次握手?
三次握手的目的是建立可靠的通信信道,说到通讯,简单来说就是数据的发送与接收,而三次握手最主要的目的就是 双方确认自己与对方的发送与接收是正常的。
SYN:同步序列编号(Synchronize Sequence Numbers)。是TCP/IP建立连接时使用的握手信号。
第一次握手:客户端给服务器发送一个SYN。客户端发送网络包,服务端收到了。服务器得出结论:客户端的发送能力,服务端的接收能力正常。
第二次握手:服务端收到SYN报文之后,会应答一个SYN+ACK报文。服务端发包,客户端收到了。客户端得出结论:服务端的接收和发送能力,客户端的接收和发送能力正常。但是此时服务端不能确认客户端的接收能力是否正常。
第三次握手;客户端收到SYN+ACK报文之后,回应一个ACK报文。客户端发包,服务端收到了。服务器得出结论:客户端的接收和发送能力,自己的接收发送能力都正常。
通过三次握手,双方都确认对方的接收以及发送能力正常。
1.4 HTTP中重定向和请求转发的区别?
实现
转发:用request的getRequestDispatcher()方法得到ReuqestDispatcher对象,调用forward()方法
request.getRequestDispatcher(“other.jsp”).forward(request, response);
重定向:调用response的sendRedirect()方法
response.sendRedirect(“other.jsp”);
1> 重定向2次请求,请求转发1次请求
2> 重定向地址栏会变,请求转发地址栏不变
3> 重定向是浏览器跳转,请求转发是服务器跳转
4> 重定向可以跳转到任意网址,请求转发只能跳转当前项目
1.5 Get和Post的区别?
- Get是不安全的,因为在传输过程,数据被放在请求的URL中;Post的所有操作对用户来说都是不可见的。
- Get传送的数据量较小,一般传输数据大小不超过2k-4k(根据浏览器不同,限制不一样,但相差不大这主要是因为受URL长度限制;Post传送的数据量较大,一般被默认为不受限制。
- Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。
- Get执行效率却比Post方法好。Get是form提交的默认方法。
2.cookie和session的区别?(必会)
1.存储位置不同
cookie的数据信息存放在客户端浏览器上。
session的数据信息存放在服务器上。
2.存储容量不同
单个cookie保存的数据<=4KB,一个站点最多保存20个Cookie。
2.Servlet的生命周期
// 1. servlet对象创建时,调用此方法
public void init(ServletConfig servletConfig);
// 2. 用户访问servlet时,调用此方法
public void service(ServletRequest servletRequest, ServletResponse servletResponse);
// 3. servlet对象销毁时,调用此方法
public void destroy();
3.JSP九大内置对象
out对象:用于向客户端、浏览器输出数据。
request对象:封装了来自客户端、浏览器的各种信息。
response对象:封装了服务器的响应信息。
exception对象:封装了jsp程序执行过程中发生的异常和错误信息。
config对象:封装了应用程序的配置信息。
page对象:指向了当前jsp程序本身。
session对象:用来保存会话信息。也就是说,可以实现在同一用户的不同请求之间共享数
application对象:代表了当前应用程序的上下文。可以在不同的用户之间共享信息。
pageContext对象:提供了对jsp页面所有对象以及命名空间的访问。
4.Ajax的介绍(必会)
Ajax 即"Asynchronous JavaScript And XML"(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。
$.ajax({
选项
})
常见的选项有:
type:请求方式,常见的值有"get","post"等,默认值:get
url:请求的路径,"/ajax/hello"
data:请求的参数,参数的常见写法有 键值对或者json
方式1: name=tom&pwd=123
方式2: {"name":"tom","pwd":"123"}
success:请求成功后的回调函数 function(返回值的参数名){}
contentType:用来设置请求参数的mime类型,默认值:表单的enctype默认值 name=tom&pwd=123
error:ajax请求时内部发生错误时执行的回调函数 function(){}
dataType:指定返回值的类型 常见值:text json
async:是否异步 默认值true
Ajax应用程序的优势在于:
- 通过异步模式,提升了用户体验
- 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
- Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。
Java最新课程:
Java零基础视频教程(2022最新Java入门,含斯坦福大学练习题+力扣算法题
Java基础入门:
java零基础自学首Java入门教程(含Java项目和Java真题)
Javaweb核心基础
JavaWeb基础教程,Java web从入门到企业实战完整版
Spring Cloud最全微服务架构:
史上最全面的springcloud微服务技术栈
Spring全套教程,入门到精通
Spring视频教程,全面深度讲解spring5底层原理
SSM框架教程:
SSM框架教程_Spring+SpringMVC+Maven高级+Spring
SpringBoot2全套视频教程:
SpringBoot2全套视频教程,springboot零基础到项目实战
Java面试题以及答案--Web部分相关推荐
- java面试题2019 答案
Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别(String 类型和 StringBuffer 类型的主要性能区别其实在于 Stri ...
- Java面试题及答案整理( 2022年最新版,持续更新)
发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全~ 这套互联网 Java 工程师面试题包括了:MyBatis.ZK.Dubbo.EL.Redis.MySQL. ...
- java 面试 概率论_编程培训-115个Java面试题和答案B.pdf
编程培训-115个Java面试题和答案B.pdf "玩转"Java系列 1 题目115个Java面试题和答案终极(下) 第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的 ...
- 115个Java面试题和答案——终极列表(下)
转载自 115个Java面试题和答案--终极列表(下) 第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,本章主要讨论异常处理,Java小应用程序 ...
- 博彦科技JAVA笔试题及答案
博彦科技JAVA笔试题及答案 一.单选题 15题*4分=60分 1.链表不具有的特点是(). A.插入.删除不需要移动元素: B.可随机访问任一元素: C.不必事先估计存储空间: D.所需空间与线性长 ...
- Java面试题及答案2019版(上)
1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些 ...
- JAVA 面试题附答案
2019独角兽企业重金招聘Python工程师标准>>> JAVA 面试题附答案 声明,本人能力有限,只是列出来参考,不对之处欢迎指正. 一.JAVA基础 JAVA中的几种基本类型,各 ...
- Java面试题以及答案精选(架构师面试题)
整理中....未整理完 大家好,本人面试基本 "笔试死".问"基础死"."Java常识死"那一类型的....面试的过程中也从曾经被" ...
- 115 个 Java 面试题和答案——终极重点(下)
题目:115 个 Java 面试题和答案--终极(下) 第一篇讨论了面向对象编程和它的特点,关于 Java 和它的功能的常见问题,Java 的集合类,垃圾收集器,本章主要讨论异常处理,Java 小应用 ...
最新文章
- 4.3 if-else语句使用
- jmeter json断言_Jmeter接口测试+压力测试
- LeetCode 461. 汉明距离(异或^ 与)
- 解决An attempt was made to load a program with an incorrect format.问题
- 通过修改word文件,来屏蔽宏代码
- 1046 划拳 (15 分)—PAT (Basic Level) Practice (中文)
- MySql command line client 命令系列
- 9.7英寸 IPS 屏平板 选购
- Premiere教程,认识 Pr 以及电脑配置
- TensorFlow开发者证书 中文手册
- 计算机二级基础知识占多少分,计算机二级MS考试题目占分数
- Tecplot 2018 破解失败怎么办?
- 从频域角度重新思考注意力机制——FcaNet
- excel图形二(雷达图、瀑布图甘特图、旭日图、树状图、组合图)与动态图
- python tkinter 实现图片格式批量转换小工具
- Elastic 7.13.0 版重磅发布:在 Elastic 上搜索和存储更多数据
- Unable to find instance for system
- yolov5之魔化修改
- 对计算机系相关人物进行访谈,瑶湖计算机系副主任姚华访谈录
- Andriod 虚拟机
热门文章
- c语言htons函数用法,在內核中C語言實現htons()函數
- Javaweb Listener监听器的简单应用:统计网站在线人数
- 搭建文件共享服务器 实验报告,ftp服务器搭建实验报告.doc
- 万豪泄漏3.83亿客户信息罚款1.24亿美元引发的网络安全思考
- CAD输入法智能插件-键盘侠
- Python range函数
- NOIP 2020 T1 排水系统(拓扑排序)
- java中public、private、protected的区别
- mac os 录屏快捷键_Micro Snitch——Mac防监控软件
- G120变频器在通信恢复后如何自动复位总线故障