Spring MVC面试题(一)

1.什么是Spring MVC?

全称为Model View Controller,Spring MVC是Spring的一个模块,基于MVC架构模式的一个框架

2.Spring MVC优点?

1.可用各种视图技术,不仅限于JSP

2.支持各种请求资源映射策略

3. Spring MVC工作原理?

1.客户端发送请求到DispatcherServlet

2.DispatcherServlet查询handlerMapping找到处理请求的Controller

3.Controller调用业务逻辑后,返回ModelAndView

4.DispatcherServlet查询ModelAndView,找到指定视图

5.DispatcherServlet把视图返回到客户端

4.Spring MVC执行流程?

MVC执行流程_mvc 执行流程-CSDN博客文章浏览阅读508次,点赞11次,收藏4次。(1)用户通过浏览器(客户端)向服务端(后端)发送请求,请求会被前端控制器。根据请求的url找到具体的处理器,生成处理器对象以及处理器拦截器(对象,该对象中会包含视图名或包含模型和视图名。会通过返回信息选择合适的处理器适配器(拦截到请求后,会调用处理器映射器()根据逻辑视图名解析成真正的视图,向浏览器返回响应结果。_mvc 执行流程https://blog.csdn.net/2301_80484340/article/details/145092353?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522cbf3269925b4472cc75a9e3018bc56cc%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=cbf3269925b4472cc75a9e3018bc56cc&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-145092353-null-null.nonecase&utm_term=mvc&spm=1018.2226.3001.4450

5.Spring MVC的Controller是不是单例模式,如果是,有什么问题,怎么解决?

是单例模式,在多线程访问时有线程安全问题,不要用同步,会影响性能,解决方案是在Controller里面不要写字段

6.Spring MVC中的控制器的注解一般用哪个?

@Controller,@RestController都行,@RestController是升级版,由@Controller和@ResponseBody组成

null文章浏览阅读369次,点赞6次,收藏4次。区别1:区别1:@RestController是@Controller的升级版区别2:用于标识一个类作为控制器,并且可以处理HTTP请求。控制器类通常用于接收用户输入并决定返回响应的内容。@RestController通常用于返回JSON或XML数据。https://blog.csdn.net/2301_80484340/article/details/144894266?ops_request_misc=%257B%2522request%255Fid%2522%253A%252212561f31e81cce8b96226adcd4e10592%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=12561f31e81cce8b96226adcd4e10592&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-144894266-null-null.nonecase&utm_term=%40RestController&spm=1018.2226.3001.4450

7.@RequestMapping的作用?

是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该路径作为父路径

8.如果想在拦截请求中,我想拦截get方法提交的方法,怎么做?

在@RequestMapping里面加上method=RequestMethod.GET或者用@GetMapping

9.怎么样在方法里面得到Request或者Session?

直接在方法的参数里面写HttpServletRequest request,Spring MVC就会自动把request传入

10.我想在拦截的方法里面接收前端请求的参数,怎么做?

@RequestParam 和 @PathVariable区别-CSDN博客文章浏览阅读647次,点赞19次,收藏5次。用于获取查询参数,适合处理可选或带默认值的参数。用于获取路径中的变量,适合处理 RESTful 风格的 URL。JAVA。https://blog.csdn.net/2301_80484340/article/details/145564505?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522ae8fa8b667489ef27f2c0f851f71f834%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=ae8fa8b667489ef27f2c0f851f71f834&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-145564505-null-null.nonecase&utm_term=%40requestparam&spm=1018.2226.3001.4450

11.Spring MVC中有个把视图和数据合并到一起的类叫什么?

ModelAndView

相关推荐
Hx_Ma165 小时前
SpringMVC框架提供的转发和重定向
java·开发语言·servlet
期待のcode6 小时前
原子操作类LongAdder
java·开发语言
舟舟亢亢6 小时前
Java集合笔记总结
java·笔记
小酒窝.7 小时前
【多线程】多线程打印ABC
java
乡野码圣7 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
JAVA+C语言7 小时前
如何优化 Java 多主机通信的性能?
java·开发语言·php
编程彩机8 小时前
互联网大厂Java面试:从分布式架构到大数据场景解析
java·大数据·微服务·spark·kafka·分布式事务·分布式架构
小酒窝.9 小时前
【多线程】多线程打印1~100
java·多线程
君爱学习9 小时前
基于SpringBoot的选课调查系统
java
APIshop9 小时前
Java 实战:调用 item_search_tmall 按关键词搜索天猫商品
java·开发语言·数据库