2.20成都小厂 面经 集思数源
好好准备八股,复习计算机网络、java基础,也要勤思考善总结。不背八股面试也是乱碰
面试6min:
三个问题:
1.三次握手、四次挥手,第三次没握有什么后果?
- 三次握手、四次挥手,第三次没握有什么后果? 答:第三次没握手,我的理解是客户端发送的ACK确认报文丢失了,因此服务端发送的同意建立连接的报文段没有收到确认,那么服务端就会超时重传同意建立连接的报文段,直到收到客户端的ACK确认报文或者达到最大重传次数。如果还是没收到就断开连接。 拓展: (1)为什么是三次,两次不行吗? 答:两个原因:主要是防止已失效的连接请求报文段突然又传送到了,还有一个是确认客户端和服务端同时具有确认和接受的能力。 假设是两次,我们客户端向服务端发送请求连接的报文,假设由于网络原因延迟了,因此客户端超时重传一个请求报文,服务端收到以后发送同意连接的报文,双方进入连接已建立状态,数据传输完成后双方关闭。此时前面一个发送的由于一些原因延迟的报文发送到了服务端,服务端就打开连接。而客户端根本没有打算建立连接,服务端却一直等,导致资源被浪费。
2.假如有十万条数据在 .csv文件里面, csv 文件如何读取,csv 按行读取用什么类呢?io 流读取文件中的一行用什么类?
3.前后端跨域问题有遇到过吗
2.假如有十万条数据在 .csv文件里面, csv 文件如何读取,csv 按行读取用什么类呢?io 流读取文件中的一行用什么类? 答:用 文件字符流和缓冲流 FileReader inOne=new FileReader("Student.csv"); BufferedReader inTwo=new BufferedReader(inOne); String strLine=inTwo.readLine(); 扩展:
(2)文件字节输入流、输出流:FileInputStream,FileOutputStream (3)文件字符输入流:FileReader
(4)随机流:RandomAcessFile 3.前后端跨域问题有遇到过吗
同源策略:协议、域名、端口3个都相同都是同源
跨域问题是不同源引起的 CORS:Cross Origin Resource Sharing Spring Boot项目中解决跨域的3中方案 (1) 在目标方法在加注解@CrossOrigin (2) 添加一个CORS过滤器 (3) 实现WebMvcConfigurer,重写addCorsMapping方法 (4)基于Nginx的反向代理实现跨域问题 配置Nginx的nginx配置文件,把前端请求通过nginx的反向代理转发到后端的指定地址,我的两个项目都是用的Nginx反向代理的方法。
反向代理,处理管理端发送的请求
location /api/ { proxy_pass http://localhost:8080/admin/; #proxy_pass http://webservers/admin/; } # 反向代理,处理用户端发送的请求 location /user/ { proxy_pass http://webservers/user/; }
4.问我有什么问题要问面试官吗
总结:
第一次面,八股都没准备,也只问了计网的八股,小厂好像更注重实操。自我介绍原来要自己主动介绍,我没有自我介绍去引导面试官提问。学过的还不熟,要复习,先别急于求成去再学新的东西,把大学三年学的复习一遍。
一本在读生,目标大厂,一起加油