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的内置模式
对象 | 作用 | 类型 | 作用域 |
request | 请求对象 | javax.servlet.ServletRequest | Request |
response | 响应对象 | javax.servlet.ServletResponse | Page |
pageConText | 页面上下文对象 | javax.servlet.jap.PageContext | Page |
session | 会话对象 | javax.servlet.http.HttpSession | Session |
application | 应用程序对象 | javax.servlet.ServletContext | Application |
out | 输出对象 | javax.servlet.jsp.JspWriter | Page |
config | 配置对象 | javax.servlet.ServletConfig | Page |
page | 页面对象 | java.lang.Object | Page |
exception | 例外对象 | java.lang.Throwable | Page |
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