modelandview

spring boot中注册拦截器

瘦欲@ 提交于 2019-12-02 09:37:41
  拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。   如何在spring boot中添加拦截器?   1.首先自己实现一个拦截器 import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class MyInterceptor implements HandlerInterceptor{ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws

spring - springmvc - 拦截器

冷暖自知 提交于 2019-12-02 05:42:12
过滤器: serverlet自带,可以拦截html,css,js等 拦截器:spring自带,只能拦截controller,用于controller运行前的预处理和运行后的后处理 1. 配置环境 springmvc.xml: <!-- 配置拦截器, class是自己写的拦截器路径 --> <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <bean id="handlerInterceptorDemo1" class="interceptor.InterceptorTest"></bean> </mvc:interceptor> </mvc:interceptors> java: 创建一个拦截器类,继承spring给的拦截器接口 package interceptor; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class

SSM(Spring-SpringMVC-Mybaits)常见面试题整理

流过昼夜 提交于 2019-12-02 05:34:34
一、Spring面试题 1、Spring 在ssm中起什么作用? Spring:轻量级框架 作用:Bean工厂,用来管理Bean的生命周期和框架集成。 两大核心: ①. IOC/DI(控制反转/依赖注入) :把dao依赖注入到service层,service层反转给action层,Spring顶层容器为BeanFactory。 ②. AOP:面向切面编程 2、Spring的事务? 编程式事务管理:编程方式管理事务,极大灵活性,难维护。 声明式事务管理:可以将业务代码和事务管理分离,用注解和xml配置来管理事务。 3、IOC 在项目中的作用? 作用:Ioc解决对象之间的依赖问题,把所有Bean的依赖关系通过配置文件或注解关联起来,降低了耦合度。 4、Spring的配置文件中的内容? 开启事务注解驱动 事务管理器 开启注解功能,并配置扫描包 配置数据库 配置SQL会话工厂,别名,映射文件 不用编写Dao层的实现类 5、Spring下的注解? 注册:@Controller @Service @Component 注入:@Autowired @Resourcebr/>请求地址:@RequestMapping 返回具体数据类型而非跳转:@ResponseBody 6、Spring DI 的三种方式? 构造器注入:通过构造方法初始化 setter方法注入:通过setter方法初始化 接口注入

Spring Boot2 系列教程(十三)Spring Boot 中的全局异常处理

不打扰是莪最后的温柔 提交于 2019-12-02 02:29:10
摘自: https://www.cnblogs.com/lenve/p/11702806.html Spring Boot2 系列教程(十三)Spring Boot 中的全局异常处理 在 Spring Boot 项目中 ,异常统一处理,可以使用 Spring 中 @ControllerAdvice 来统一处理,也可以自己来定义异常处理方案。Spring Boot 中,对异常的处理有一些默认的策略,我们分别来看。 默认情况下,Spring Boot 中的异常页面 是这样的: 我们从这个异常提示中,也能看出来,之所以用户看到这个页面,是因为开发者没有明确提供一个 /error 路径,如果开发者提供了 /error 路径 ,这个页面就不会展示出来,不过在 Spring Boot 中,提供 /error 路径实际上是下下策,Spring Boot 本身在处理异常时,也是当所有条件都不满足时,才会去找 /error 路径。那么我们就先来看看,在 Spring Boot 中,如何自定义 error 页面,整体上来说,可以分为两种,一种是静态页面,另一种是动态页面。 静态异常页面 自定义静态异常页面,又分为两种,第一种 是使用 HTTP 响应码来命名页面,例如 404.html、405.html、500.html ....,另一种就是直接定义一个 4xx.html,表示400-499

SpringMVC常见面试题总结(超详细回答)

こ雲淡風輕ζ 提交于 2019-12-02 02:17:13
1、什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。 2、SpringMVC的流程? (1)用户发送请求至前端控制器DispatcherServlet; (2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle; (3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet; (4)DispatcherServlet 调用 HandlerAdapter处理器适配器; (5)HandlerAdapter 经过适配调用 具体处理器(Handler,也叫后端控制器); (6)Handler执行完成返回ModelAndView; (7)HandlerAdapter将Handler执行结果ModelAndView返回给DispatcherServlet; (8)DispatcherServlet将ModelAndView传给ViewResolver视图解析器进行解析; (9

SpringMVC系列(面试必备):SpringMVC常见面试题总结(详细回答)

五迷三道 提交于 2019-12-02 02:17:02
SpringMVC常见面试题总结(详细回答) 前言 今天博主将为大家分享一下SpringMVC系列(面试必备):SpringMVC常见面试题总结(详细回答),不喜勿喷,如有异议欢迎讨论! 步入正题 什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。 SpringMVC的流程? 用户发送请求至前端控制器DispatcherServlet; DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle; 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet; DispatcherServlet 调用 HandlerAdapter处理器适配器; HandlerAdapter 经过适配调用 具体处理器(Handler,也叫后端控制器); Handler执行完成返回ModelAndView;

Spring MVC学习笔记

限于喜欢 提交于 2019-12-01 22:51:11
Spring MVC架构原理解析 第一步:发起请求到前端控制器(DispatcherServlet) 第二步:前端控制器请求HandlerMapping查找 Handler 可以根据xml配置、注解进行查找 第三步:处理器映射器HandlerMapping向前端控制器返回Handler 第四步:前端控制器调用处理器适配器去执行Handler 第五步:处理器适配器去执行Handler 第六步:Handler执行完成给适配器返回ModelAndView 第七步:处理器适配器向前端控制器返回ModelAndView ModelAndView是springmvc框架的一个底层对象,包括 Model和view 第八步:前端控制器请求视图解析器去进行视图解析 根据逻辑视图名解析成真正的视图(jsp) 第九步:视图解析器向前端控制器返回View 第十步:前端控制器进行视图渲染 视图渲染将模型数据(在ModelAndView对象中)填充到request域 第十一步:前端控制器向用户响应结果 组件: 1、前端控制器DispatcherServlet(不需要程序员开发) 作用接收请求,响应结果,相当于转发器,中央处理器。 有了DispatcherServlet减少了其它组件之间的耦合度。 2、处理器映射器HandlerMapping(不需要程序员开发) 作用:根据请求的url查找Handler 3

配置注解映射器和适配器。

穿精又带淫゛_ 提交于 2019-12-01 22:45:06
<!-- 使用 mvc:annotation-driven 代替上边注解映射器和注解适配器配置 mvc:annotation-driven 默认加载很多的参数绑定方法, 比如 json 转换解析器就默认加载了,如果使用 mvc:annotation-driven 不用配置上边的 RequestMappingHandlerMapping 和 RequestMappingHandlerAdapter 实际开发时使用 mvc:annotation-driven --> 1.springmvc.xml配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www

mvc执行流程

£可爱£侵袭症+ 提交于 2019-12-01 22:15:15
springmvc 框架 1.1 什么是springmvc springmvc 是 spring 框架的一个模块, springmvc 和 spring 无需通过中间整合层进行整合。 springmvc 是一个基于 mvc 的 web 框架。 1.2 mvc 在 b/s 系统 下的应用 mvc 是一个设计模式, mvc 在 b/s 系统 下的应用: 1.3 springmvc 框架 第一步:发起请求到前端控制器 (DispatcherServlet) 第二步:前端控制器请求 HandlerMapping 查找 Handler 可以根据 xml 配置、注解进行查找 第三步:处理器映射器 HandlerMapping 向前端控制器返回 Handler 第四步:前端控制器调用处理器适配器去执行 Handler 第五步:处理器适配器去执行 Handler 第六步: Handler 执行完成给适配器返回 ModelAndView 第七步:处理器适配器向前端控制器返回 ModelAndView ModelAndView 是 springmvc 框架的一个底层对象,包括 Model 和 view 第八步:前端控制器请求视图解析器去进行视图解析 根据逻辑视图名解析成真正的视图 (jsp) 第九步:视图解析器向前端控制器返回 View 第十步:前端控制器进行视图渲染 视图渲染将模型数据 ( 在

HandlerAdapter与适配器模式以及SpringMVC核心接口

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-01 17:35:09
HandlerAdapter,顾名思义,是Handler的适配器,为了适配各种Handler,从而可以以统一的方式获取ModelAndView。 // request => Handler public interface HandlerMapping { HandlerExecutionChain getHandler(HttpServletRequest request); } //常用: // - BeanNameUrlHandlerMapping // - RequestMappingHandlerMapping // Handler => ModelAndView public interface HandlerAdapter { boolean support(Object handler); ModelAndView handler(HttpServletRequest request, HttpServletResponse response, Object handler); long getLastModified(HttpServletRequest request, Object handler); } //常用: // - HttpRequestHandlerAdapter // - SimpleControllerHandlerAdapter // -