面试问题总结

本文深入探讨了SpringMVC的工作流程,详细解析了JSP内置对象的功能与作用域,对比了SQL语句Union与Union All的区别,阐述了TCP与UDP协议的特点与应用场景,介绍了进程间通信的三种主要方式,解析了HTTP状态码的含义,并讨论了数据库死锁的原因及解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1.Springmvc的流程

1.1 用户向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。
2、DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器。由此得知,该请求该由哪个Controller来处理(并未调用Controller,只是得知)
3、DispatcherServlet调用HandlerAdapter处理器适配器,告诉处理器适配器应该要去执行哪个Controller
4、HandlerAdapter处理器适配器去执行Controller并得到ModelAndView(数据和视图),并层层返回给DispatcherServlet
5、DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。
6、DispatcherServlet将模型数据填充到视图中
7、DispatcherServlet将结果响应给用户

DispatcherServlet->HandlerMapping->返回Handler->使用HandlerAdapter去执行Handler(Controller)->返回ModelAndView->ViewReslover进行视图解析->返回View视图->将数据渲染到视图中并将结果响应给用户

参考:https://www.cnblogs.com/hamawep789/p/10840774.html

2.Jsp的内置模式

jsp九大内置对象
对象  作用类型作用域
request 请求对象javax.servlet.ServletRequestRequest
response响应对象javax.servlet.ServletResponsePage
pageConText页面上下文对象javax.servlet.jap.PageContextPage
session会话对象javax.servlet.http.HttpSessionSession
application应用程序对象javax.servlet.ServletContextApplication
out 输出对象javax.servlet.jsp.JspWriterPage
config配置对象javax.servlet.ServletConfigPage
page页面对象java.lang.ObjectPage
exception例外对象java.lang.ThrowablePage

request、response、session、out、config、exception、page、pageContext、application

参考:https://www.cnblogs.com/yanpingping/p/10720101.html

3.union和union all的区别

3.1 Union去重排序 Union all 不去重不排序

3.2 Union因为要去重排序 ,所以效率没有Union all那么高
4.tcp与Udp的差异

4.1 Tcp是面向连接的,而UDP不需要提前建立连接

4.2 TCP提供可靠服务、UDP最大努力交付

4.3 UDP具有更好实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
4,4 TCP只支持点对点,而UDP支持一对一、一对多、多对一。

4.5 TCP对系统资源要求较多,而UDP对系统资源要求较少

参考:
5.进程通信的三种方式

5.1 共享存储:通信进程之间存在一块可直接访问的共享空间,对共享空间进行操作。两种:基于数据结构的低级方式和基于存储共享的高级方式。

5.2 消息传递 

5.2.1 直接通信方式:发送进程直接将消息发送给接收进程并把它挂在接收进程的消息缓冲队列上。

5.2.2 间接通信方法:发给中间实体,接收者从中间实体获取消息

5.3 管道通信

管道定义:用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件。


6.3开头的状态码

200成功 300-307 表示要完成请求,需要进一步操作,通常为重定向

404未找到网页 400-417表示请求可能出错了,妨碍服务器处理

500-505表示:服务器在尝试请求处理时发生内部错误,是服务器的错,不是请求的错

https://blog.csdn.net/dcba2014/article/details/79390397/
7.数据库中的死锁 以及解决办法。

1. 事务之间对资源访问顺序的交替 A访问A表,再B表 而B是先B 再A表

2. 并发修改同一记录 A查询再修改 B直接修改

在从共享锁上升到独占锁时 B已经是独占 而B要等A释放共享锁

3.索引不当导致的死锁

全表扫描

https://www.cnblogs.com/wezheng/p/8366029.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值