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

相关推荐
豆沙沙包?1 小时前
2025年--Lc165--H637.二叉树的层平均值(二叉树的层序遍历)--Java版
java·开发语言
迎風吹頭髮2 小时前
UNIX下C语言编程与实践40-UNIX 全局跳转:setjmp 与 longjmp 函数的使用与注意事项
java·c语言·unix
春风霓裳2 小时前
maven-setting配置
java·maven
小蒜学长2 小时前
springboot二手儿童绘本交易系统设计与实现(代码+数据库+LW)
java·开发语言·spring boot·后端
wangwangmoon_light3 小时前
0.0 编码基础模板
java·数据结构·算法
Terio_my3 小时前
Spring Boot 热部署配置与自定义排除项
java·spring boot·后端
JAVA学习通4 小时前
微服务项目->在线oj系统(Java-Spring)--C端用户(超详细)
java·开发语言·spring
计算机毕业设计小帅4 小时前
【2026计算机毕业设计】基于jsp的毕业论文管理系统
java·开发语言·毕业设计·课程设计
xxxxxxllllllshi5 小时前
Java 代理模式深度解析:从静态到动态,从原理到实战
java·开发语言·笔记·算法·代理模式