Spring MVC的常见面试题
时间: 2023-11-17 14:07:34 浏览: 32
1. Spring MVC 的核心组件是什么?
答:Spring MVC 的核心组件是 DispatcherServlet、HandlerMapping、Controller、ViewResolver。
2. Spring MVC 中的 DispatcherServlet 的作用是什么?
答:DispatcherServlet 是 Spring MVC 中的核心控制器,负责接收 HTTP 请求,然后将请求转发给相应的 Controller 进行处理,并将处理结果返回给客户端。
3. Spring MVC 中的 HandlerMapping 的作用是什么?
答:HandlerMapping 负责将请求映射到相应的 Controller 上,它是将请求 URL 映射到具体 Controller 类和方法的关键组件。
4. Spring MVC 中的 Controller 的作用是什么?
答:Controller 是 Spring MVC 中的控制器,负责处理请求,并将处理结果封装成 Model,然后返回给 DispatcherServlet。
5. Spring MVC 中的 ViewResolver 的作用是什么?
答:ViewResolver 负责将 Controller 返回的逻辑视图名解析为实际的视图(如 JSP、HTML 等),然后将视图呈现给客户端。
6. Spring MVC 中的 @RequestMapping 注解的作用是什么?
答:@RequestMapping 注解用于将请求 URL 映射到相应的 Controller 类或方法上,它可以指定请求方法、请求参数、请求头等条件,更灵活地控制请求的处理。
7. Spring MVC 中的 @ModelAttribute 注解的作用是什么?
答:@ModelAttribute 注解用于将请求参数绑定到 Controller 方法的参数或 Model 属性上,它可以在 Controller 方法执行前自动将请求参数封装成 JavaBean 对象,简化了参数传递的过程。
8. Spring MVC 中的拦截器(Interceptor)的作用是什么?
答:拦截器是 Spring MVC 的一种可插拔的组件,它可以在请求处理前、后、异常处理后等不同的阶段进行拦截,用于添加公共业务逻辑、权限控制等功能。
9. Spring MVC 中的文件上传如何实现?
答:文件上传可以通过 MultipartResolver 来实现,它可以将上传的文件转化成 MultipartFile 对象,然后将其保存到磁盘或者数据库中。
10. Spring MVC 中的数据校验如何实现?
答:数据校验可以通过 Spring 的 Validator 接口来实现,它提供了一系列的校验方法,可以在 Controller 方法执行前或者请求参数绑定到 JavaBean 对象前进行校验。同时,Spring 也提供了 JSR-303 标准的数据校验支持,可以通过注解的方式实现校验。