本章节主要内容:
通过前面的学习,我们了解并快速完成了spring boot第一个应用。spring boot企业级框架,那么spring boot怎么读取静态资源?如js文件夹,css文件以及png/jpg图片呢?怎么自定义消息转换器呢?怎么自定义spring mvc的配置呢?这些我们在公司都需要用的。这些怎么解决呢?在接下来的小节详细讲解这些。好了,现在开启spring boot的web开发第四节
本节主要:
1:自定义消息转换器
本文是《凯哥陪你学系列-框架学习之spring boot框架学习》中第八篇 spring boot框架学习8-spring boot的web开发(4)-自定义spring mvc的配置
声明:本文系凯哥Java(www.kaigejava.com)原创,未经允许,禁止转载!
本节主要内容:
1:通过添加拦截器学习自定义spring mvc的配置
2:HandlerInterceptor对象的三个方法详解
一:通过添加拦截器学习自定义spring mvc的配置
1.1:需求说明
有时候,我们不需要自己配置spring mvc而不是采用springt boot
默认的批准。比如,在后台,用户必须登录后才可以访问对应页面。这个时候,我们就需要添加一个拦截器,来进行处理。这种情况怎么办?
1.2: 如何增加一个拦截器
需要增加拦截器,这个时候就得通过继承webmvcconfigureadapter然后重写父类中的方法进行扩展。
如下图:
查看运行结果:
用户没有登录:
在看在地址中添加用户user=123执行后截图:
二:HandlerInterceptor对象的三个方法详解
2.1:preHandle(HttpServletRequest request,HttpServletResponse response, Object handler)
从上图用户已经登录了,但是凯哥上图截图红色选中部分中可以看出,该preHandle方法将在执行controller处理前调用的。源码如下:
大致意思就是,当返回true接着执行chain后面的。如果返回false的时候,就直接结束请求。
下图是个人理解:
所以,如果我们想要权限处理:
2.2:postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView)方法:
先看源码:
这个是当时post请求是,执行方法的。这里就不详细讲解了。
2.3:afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)。
理解:
本节主要讲解自定义的拦截器,来处理一些请求。
在下一节中,我们将讲解跳转到jsp页面返回404错误码怎么解决以及登录后继续跳转的当前浏览页面的功能。欢迎大家继续学习。
本系列其他文章:
spring boot框架学习学前掌握之重要注解(1)-spring的java配置方式
spring boot框架学习学前掌握之重要注解(2)-通过java的配置方式进行配置spring
spring boot框架学习学前掌握之重要注解(3)-通过注解方式读取外部资源配置文件
spring boot框架学习学前掌握之重要注解(4)-通过注解方式读取外部资源配置文件2
spring boot框架学习1-认识spring boot和快速入门
spring boot框架学习2-spring boot核心(1)
spring boot框架学习3-spring boot核心(2)
spring boot框架学习5-spring boot的web开发(1)
spring boot框架学习6-spring boot的web开发(2)
pring boot框架学习7-spring boot的web开发(3)-自定义消息转换器 |
欢迎关注凯哥公众号:凯哥Java
欢迎访问凯哥个人网站:www.kaigejava.com
本文出处:http://www.kaigejava.com/article/detail/57
spring boot系列教程地址:http://kaigejava.com/article/list?cateid=3
相关推荐
Spring Boot 是在 Spring 的基础上创建一款开源框架,它提供了 spring-boot-starter-web(Web 场景启动器) 来为 Web 开发予以支持。spring-boot-starter-web 为我们提供了嵌入的 Servlet 容器以及 SpringMVC 的依赖...
spring-boot-starter-web-1.0.0.RELEASE.jar 各个版本,免费下载 spring-boot-starter-web.RELEASE.jar 各个版本,免费下载 spring-boot-starter-web.jar 各个版本,免费下载 如果不能免费下载,关注我,评论区联系...
spring-boot-starter-web-2.0.7.0.jar
spring-boot-starter-web-1.5.4.RELEASE.jar
Spring Boot 提供了 `spring-boot-starter-web` 依赖,它包含了 Servlet 容器(如 Tomcat 或 Jetty)、Spring MVC 和 Jackson JSON 处理库等关键组件。Spring MVC 是 Spring 框架的一部分,负责处理 HTTP 请求和响应...
<artifactId>spring-boot-starter-web ``` 自定义层配置 Spring Boot Maven Plugin 提供了自定义层配置的功能,例如可以自定义存档的名称、版本号等。 重新打包可执行的存档 Spring Boot Maven Plugin 提供...
"spring-boot-starter-log4j2"就是Spring Boot为Log4j2提供的一个启动器,包含了Log4j2运行所需的jar包。当我们添加这个依赖到项目中,Spring Boot会自动配置Log4j2,无需手动进行繁琐的初始化设置。 三、集成步骤 ...
spring-boot-starter-parent是Spring Boot框架中的一个基础依赖项管理工具,主要用于管理项目中的依赖项版本。通过继承spring-boot-dependencies,spring-boot-starter-parent可以提供一系列的依赖项管理功能,包括...
在Java开发中,Spring Boot以其简洁、高效的特性,已经成为Web开发框架的首选之一。它通过自动配置和启动器(starter)来简化应用的搭建与运行。而当我们涉及到大数据存储与处理时,Apache HBase作为NoSQL数据库的一...
4. **微服务**:"spring-boot-sample-eureka-server"和"spring-boot-sample-eureka-client"展示了如何构建基于Netflix Eureka的微服务注册与发现,这是微服务架构中重要的组成部分。 5. **集成第三方服务**:...
Spring Boot是Spring框架的一个轻量级版本,旨在简化微服务开发,而Python则是一种广泛应用的编程语言,尤其在数据处理、科学计算和Web开发领域有广泛的应用。这个项目可能是为了演示如何在Java应用中调用Python脚本...
总的来说,这个“spring-boot spring-security-oauth2 完整demo”为学习和实践Spring Boot、Spring Security与OAuth2的结合提供了宝贵的参考。通过深入理解和实践这个示例,开发者不仅可以掌握这三大框架的基本用法...
Spring Boot CLI(命令行接口)是Spring Boot框架的一部分,它提供了快速开发新Spring应用程序的方式。通过这个CLI工具,开发者可以直接运行Groovy脚本,而无需创建一个完整的项目结构。Spring Boot 2.0.3.RELEASE是...
标题中的"spring-boot 自定义xml配置web请求拦截器"指的是在Spring Boot项目中,通过XML配置方式实现对Web请求的拦截处理。这涉及到Spring Boot的Web层架构、AOP(面向切面编程)以及自定义拦截器的概念。Spring ...
Spring Boot CLI(命令行接口)是Spring框架的一个重要工具,它简化了基于Spring的应用程序开发。这个工具允许开发者快速地创建、运行和测试Spring应用程序,无需进行大量的项目配置。我们来详细了解一下`spring-...
Spring Boot是Java开发领域的一款非常流行的框架,它简化了基于Spring的应用程序开发流程。Spring Boot 2.6.2是该框架的一个版本,包含了多个模块和改进,旨在提高开发效率和应用性能。在这个版本中,我们可以深入...
spring-boot-examples-master示例程序,与各种框架集成,包括: dockercompose-springboot-mysql-nginx spring-boot-actuator spring-boot-banner spring-boot-docker spring-boot-elasticsearch spring-boot-...
在“Spring-boot所需jar包”中,提到的 "springmvc.jar" 是 Spring MVC 的核心库,它是 Spring 框架的一部分,专门用于处理 Web 应用的请求和响应。Spring MVC 提供了一个模型-视图-控制器(MVC)架构,用于构建可...
在这个压缩包中,"spring-boot-2.7.17"可能包含的是源码仓库,包括Spring Boot框架的各个模块,如spring-boot-project、spring-boot-autoconfigure、spring-boot-starter-parent等。开发者可以通过阅读源码理解...
首先,我们来看"spring-boot-starter-freemarker-1.3.3.RELEASE.jar",这是Spring Boot官方提供的一个启动器(Starter),用于简化与Freemarker的集成。Freemarker是一个强大的、轻量级的、基于模板的语言,常用于...