1、说几种常见的攻击方式及预防手段。
2、http1.x 和 http2.x 的区别。
3、mysql 查询语句怎么做性能分析。
4、你知道哪几种排序算法?
5、HashMap 和 HashTable 的区别,并说明其底层实现数据结构。
6、HashMap 满了之后怎么扩容?
7、Linux 中远程传输文件有什么方式?
8、说说 Java 中异常的分类。
9、TCP 和 UDP 的区别,TCP 为什么是三次握手,不是两次。
10、说说数据库设计的三范式,可以违反三范式吗?
答案
1、XSS/CSRF/DDOS 具体参考之前的文章。
2、http2.0 增加多路复用、二进制分帧、首部压缩、服务器推送。
3、使用 explain 或者 profile 命令,具体参考之前的文章。
4、冒泡、选择、插入、希尔、快速、堆、归并、桶排序。
5、HashMap 非线程安全,HashTable 线程安全,具体参考之间的文章。
6、loadfactor 为扩容因子,当数据容量超过最大容量*loadfactor 时容量自动扩大 2 倍,并将当前的数
据重新放入新的 hashmap 中,所以初始的定义大小为 2^n 的大小最佳。
7、SCP、FTP 等。
8、Throwable 子类 Exception、Error。
9、 1.基于连接与无连接 2.TCP 要求系统资源较多,UDP 较少。 3.UDP 程序结构较简单。 4.流模式
(TCP)与数据报模式(UDP)。 5.TCP 保证数据正确性,UDP 可能丢包。 6.TCP 保证数据顺序,UDP 不保证。
为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误,即重要的事情说三遍
10、 第一范式,又称 1NF,它指的是在一个应用中的数据都可以组织成由行和列的表格形式,且表格的任意
一个行列交叉点即单元格,都不可再划分为行和列的形式,实际上任意一张表格都满足 1NF; 第二范式,又
称 2NF,它指的是在满足 1NF 的基础上,一张数据表中的任何非主键字段都全部依赖于主键字段,没有任何
非主键字段只依赖于主键字段的一部分。即,可以由主键字段来唯一的确定一条记录。比如学号+课程号的联
合主键,可以唯一的确定某个成绩是哪个学员的哪门课的成绩,缺少学号或者缺少课程号,都不能确定成绩的
意义。 第三范式,又称 3NF,它是指在满足 2NF 的基础上,数据表的任何非主键字段之间都不产生函数依赖,
即非主键字段之间没有依赖关系,全部只依赖于主键字段。例如将学员姓名和所属班级名称放在同一张表中是
不科学的,因为学员依赖于班级,可将学员信息和班级信息单独存放,以满足 3NF。 某些业务设计可以违反
三范式。
评论