一.了解springMVC执行流程吗?
1.用户发送请求至前端控制器DispatcherServlet。
2.DispatcherServlet收到请求调用HandlerMapping处理器映射器。
3.处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。
4.DispatcherServlet调用HandlerAdapter处理器适配器。
5.HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。
6.Controller执行完成返回ModelAndView。
7.HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。
8.DispatcherServlet将ModelAndView传给ViewReslover视图解析器。
9.ViewReslover解析后返回具体View。
10.DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。
11.DispatcherServlet响应用户
二.String,StringBuiler,StringBuffder之间的区别
1.String一经创建没有办法进行改变,而StringBuiler和StringBuffer是可以进行改变的
String类中使用final关键字字符数组保存字符串(private fianl char value[]),所以String是不能改变的
StringBuiler,StringBuffder是使用append()方法在字符串后面追加东西的时候,如果长度超过了该字符串存储空间大小了就需要进行扩容:构建新的存储空间更大的字符串,将旧的复制过去
2.StringBuiler,StringBuffder一个是线程不安全的,一个线程安全
StringBuffer 对方法加了同步锁或者对调用的方法加了同步锁,所以是线程安全的。
StringBuilder 并没有对方法进行加同步锁,所以是非线程安全的
三.线程的创建方式
4种
四.线程池的几种创建方式?
分为两类(共7种):
一类是通过 ThreadPoolExecutor 创建的线程池;
另一个类是通过 Executors 创建的线程池。
本文发布于:2024-02-02 02:14:11,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170681444840738.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |