支持提供静态资源,包括对WebJars的支持( 本文档后面将介绍)。...28.2.3静态内容 默认情况下,Spring Boot从类路径中名为 /static (或 /public 或 /resources 或 /META-INF/resources )的目录中提供静态内容...默认情况下,资源映射到 /** ,但您可以通过设置 spring.webflux.static-path-pattern 属性来调整它。...自定义错误页面 如果要显示给定状态代码的自定义HTML错误页面,可以将文件添加到 /error 文件夹。错误页面可以是静态HTML(即,添加到任何静态资源 文件夹下)或使用模板构建。...例如,要将 404 映射到静态HTML文件,您的文件夹结构将如下所示: src/ +- main/ +- java/ | + +- resources/ +- public
>org.springframework.boot spring-boot-starter-parent 404依然走的是默认的错误页面,所以如果我们需要捕获404异常,依然需要在配置文件中添加 # 出现错误时, 直接抛出异常 spring.mvc.throw-exception-if-no-handler-found...=true # 设置静态资源映射访问路径 spring.mvc.static-path-pattern=/statics/** # spring.resources.add-mappings=false...,不考虑自定义实现) 我们的@Controller中通过@RequestMapping定义的REST服务,返回的是静态资源 那么js,css,图片这些文件呢,在我们的web应用中并不会定义一个REST服务...项目:https://github.com/liuyueyi/spring-boot-demo/tree/master/spring-boot/209-web-error
自定义序列化器(serializers)通常通过Module注册到Jackson,但Spring Boot提供了@JsonComponent注解这一替代方式,它能轻松的将序列化器注册为Spring Beans...静态内容 默认情况下,Spring Boot从classpath下的/static(/public,/resources或/META-INF/resources)文件夹,或从ServletContext...此外,除了上述标准的静态资源位置,有个例外情况是Webjars内容。任何在/webjars/**路径下的资源都将从jar文件中提供,只要它们以Webjars的格式打包。...欢迎页面 Spring Boot支持静态和模板欢迎页面。它首先index.html在配置的静态内容位置中查找 文件。如果找不到,则会查找index模板。...错误页面既可以是静态HTML(比如,任何静态资源文件夹下添加的),也可以是使用模板构建的,文件名必须是明确的状态码或一系列标签。
(问题:你能讲下为什么我们要用 Spring Boot 吗?) 相信我,上面这些类似的问题,90%有经验的Java程序员超都曾遇见过!但很少有系统化的回答。...默认情况下,Spring Boot 中的异常页面 是这样的: 我们从这个异常提示中,也能看出来,之所以用户看到这个页面,是因为开发者没有明确提供一个/error 路径,如果开发者提供了 /error...静态异常页面 自定义静态异常页面,又分为两种,第一种 是使用HTTP响应码来命名页面,例如404.html、405.html、500.html .......默认是在 classpath:/static/error/ 路径下定义相关页面: 此时,启动项目,如果项目抛出 500 请求错误,就会自动展示 500.html 这个页面,发生 404 就会展示404...即完整的错误页面查找 方式应该是这样: 发生了 500 错误-->查找动态 500.html 页面-->查找静态 500.html --> 查找动态 5xx.html-->查找静态5xx.html。
28.1.11错误处理 默认情况下,Spring Boot提供 /error 映射,以合理的方式处理所有错误,并在servlet容器中注册为“全局”错误页面。...自定义错误页面 如果要显示给定状态代码的自定义HTML错误页面,可以将文件添加到 /error 文件夹。错误页面可以是静态HTML(即,添加到任何静态资源 文件夹下),也可以使用模板构建。...例如,要将 404 映射到静态HTML文件,您的文件夹结构将如下所示: src/ +- main/ +- java/ | + +- resources/ +- public.../ +- error/ | +- 404.html +- 要使用FreeMarker模板映射所有 5xx 错误,您的文件夹结构如下: src/ +-...小心:当部署到servlet容器时,Spring Boot使用其错误页面过滤器将具有错误状态的请求转发到相应的错误页面。如果尚未提交响应,则只能 将请求转发到正确的错误页面。
在 Spring Boot 中自定义错误页面,可以根据项目类型(前后端分离 or 传统 Web 应用)和需求灵活选择方式。以下是 最常用、最推荐的几种方法,从简单到高级逐步说明。...✅ 一、最简单方式:静态/模板错误页(推荐用于传统 Web 应用) Spring Boot 内置了 DefaultErrorViewResolver,它会自动在特定目录下查找错误页面。...配置步骤 引入模板引擎(可选但推荐) <!...) 通用错误页 error.html 文件名就叫 error.html,会匹配所有未明确指定的状态码。...public String serverError() { return "error/500"; } } 错误页面中可用的数据(Thymeleaf 示例) Spring Boot
Spring Boot 中,对异常的处理有一些默认的策略,我们分别来看。 默认情况下,Spring Boot 中的异常页面 是这样的: ?...静态异常页面 自定义静态异常页面,又分为两种,第一种 是使用HTTP响应码来命名页面,例如404.html、405.html、500.html .......此时,启动项目,如果项目抛出 500 请求错误,就会自动展示 500.html 这个页面,发生 404 就会展示404.html 页面。...如果动态页面和静态页面同时定义了异常处理页面,例如 classpath:/static/error/404.html 和classpath:/templates/error/404.html 同时存在时...即完整的错误页面查找方式应该是这样: 发生了 500 错误-->查找动态 500.html 页面-->查找静态 500.html --> 查找动态 5xx.html-->查找静态5xx.html。
当我们的后端应用出现异常时,通常会将异常状况包装之后再返回给调用方或者前端,在实际的项目中,不可能对每一个地方都做好异常处理,再优雅的代码也可能抛出异常,那么在 Spring 项目中,可以怎样优雅的处理这些异常呢...org.springframework.boot spring-boot-starter-parent...测试说明 实例测试如下,上面我们声明捕获的两种异常被拦截并输出对应的堆栈信息; 但是需要注意 404 和未捕获的 500 异常则显示的 SpringBoot 默认的错误页面; 此外我们捕获返回的 http...首先修改配置文件application.properties,将NoHandlerFoundException抛出来 # 出现错误时, 直接抛出异常 spring.mvc.throw-exception-if-no-handler-found...=true # 设置静态资源映射访问路径,下面两个二选一, spring.mvc.static-path-pattern=/statics/** # spring.resources.add-mappings
Spring Boot 中,对异常的处理有一些默认的策略,我们分别来看。 默认情况下,Spring Boot 中的异常页面 是这样的: ?...此时,启动项目,如果项目抛出 500 请求错误,就会自动展示 500.html 这个页面,发生 404 就会展示 404.html 页面。...即完整的错误页面查找方式应该是这样: 发生了 500 错误-->查找动态 500.html 页面-->查找静态 500.html --> 查找动态 5xx.html-->查找静态 5xx.html。...(三)理解 spring-boot-starter-parent 4、Spring Boot2 系列教程(四)理解配置文件 application.properties !...整合 Thymeleaf 10、Spring Boot2 系列教程(十)Spring Boot 整合 Freemarker 11、Spring Boot2 系列教程(十一)Spring Boot 中的静态资源配置
默认情况下,Spring Boot为基于SpringMVC的Web应用提供了全局统一异常处理,本篇将深入介绍默认的统一异常处理及自定义异常处理,主要包含以下4部分内容: 默认异常处理; 覆盖默认异常处理...默认异常处理 通过浏览器请求一个不存在的页面或服务端处理发生异常时,Spring Boot会返回类似如下的错误提示页面: ?...默认情况下浏览器发送的请求头中Accept为text/html,所以此时请求进入errorHtml方法处理,Spring Boot会响应一个“Whitelabel Error Page”页面;当使用Postman...等调试工具发送请求时,默认情况下请求头中没有Accept信息,所以请求进入error方法处理,Spring Boot会返回一个Json格式的错误信息字符串,具体代码如下图所示。...错误页面可以是静态HTML,也可以是使用模板构建的文件,例如freemarker,文件的名称必须是确切的状态码。
src/test/java下的测试用例,生成测试报告 双击「test」,控制台会显示测试用例执行结果(成功/失败) 打包(Package) mvn package 将项目打包为jar包(普通Java项目...」→「Maven」查看,示例路径为D:\Maven\.m2\settings.xml 若该路径下无settings.xml文件,可从Maven安装目录的conf文件夹复制(如D:\apache-maven...核心优势解析 在学习SpringBoot之前, 我们先来认识一下Spring 我们看下Spring官方的介绍 可以看到, Spring让Java程序更加快速, 简单和安全....│ │ ├── static/ # 静态资源目录(存放JS、CSS、图片等) │ │ ├── templates/ # 模板文件目录(存放Thymeleaf...) 若页面显示“hello Spring Boot~”,说明接口开发成功 五、SpringBoot项目常见问题排查与解决方案 5.1 404错误:资源不存在 5.1.1 错误现象 浏览器访问接口时,
这篇文章将详细介绍 ErrorMvcAutoConfiguration类,包括其作用、工作原理以及如何在 Spring Boot 3 应用中定制和使用它。...默认情况下,它会映射到 /error 路径。当错误发生时,Spring MVC 会自动重定向到这个路径,并由 BasicErrorController 处理请求,最终返回一个错误视图。.../error/精确码.html **如果没有模板引擎,在静态资源文件夹下找 **精确码.html **如果匹配不到 **精确码.html这些精确的错误页,就去找 5xx.html,4xx.html模糊匹配...**如果有模板引擎,默认在 **classpath:/templates/error/5xx.html **如果没有模板引擎,在静态资源文件夹下找 **5xx.html new ModelAndView...示例代码: 假设你已经创建了 404.html和 500.html在 src/main/resources/static/error目录下,无需其他配置,Spring Boot会自动使用这些页面响应相应的错误
Boot 默认将静态资源映射在 /** 的路径下,当然,你可以通过修改 spring.webflux.static-path-pattern 属性来调整默认映射,例如,将所有资源映射到 /resources...Spring Boot 为以下的模板引擎提供了自动配置的支持: FreeMarker Thymeleaf Mustache 当你使用了其中某个模板引擎,并选择了 Spring Boot 自动配置,你需要将你的模板文件放在...HTML 错误页面,你可以在 /error 目录下添加一个错误页面文件。...可以是静态HTML(即添加到任意静态资源文件夹下),也可以使用模板构建,文件名应为确切的状态码或系列掩码。...例如,要映射 404 错误码到静态 HTML 文件,您的文件夹结构如下: src/ +- main/ +- java/ | + +- resources
1、ssm中的静态资源过滤 在spring-mvc.xml中加入,启用默认Servlet web.xml的 servlet-mapping...中加入对静态资源的处理(可不加) /images/* 2、com.fasterxml.jackson.annotation不存在 错误如下:...错误 将vue文件打包之后,放到了后端的static文件夹下,可以正常使用,刷新的时候就会找不到页面 解决方案,重定向 在没有前端代码的情况下,后端注册一个Bean,可以刷新访问到页面了,数据也是正常的...http://localhost:8089/order 404 package com.myfdc.config; import org.springframework.boot.web.server.ConfigurableWebServerFactory...; import org.springframework.boot.web.server.ErrorPage; import org.springframework.boot.web.server.WebServerFactoryCustomizer
默认设置的静态资源文件夹就是通过重写该方法设置的。...下面来演示一下:启动 Spring Boot,访问http://localhost:8080/login、http://localhost:8080/、http://localhost:8080/index3...再一些特殊的情况下,我们可能先要抛弃Spring Boot对Spring Boot的全部的自动配置,完全接管Spring MVC。...并且我们还要知道,Spring Boot 能够访问位于静态资源文件夹中的静态文件,这是因为 Spring Boot 对 Spring MVC 的默认自动配置中定义的,当我们全面接管 Spring MVC...后,Spring Boot 对 Spring MVC 的默认配置都会失效,此时再访问静态资源文件夹中的静态资源就会报 404 错误。)
SpringBoot1.x和SpringBoot2.x版本差异化还是比较大的,有些三方依赖组件有些是基于2.0版本为标准升级的,当我们将项目由1.0升级到2.0时会出现依赖的方法不存在或方法错误,需要逐个去调整...spring.jdbc.template 属性定制; 4) 提供了新配置 spring.jdbc.template 方便分页和排序; 5) 对数据库 spring.jdbc.template 自动化配置支持...静态资源文件处理 切记,springboot2的静态资源必须手动设置路径映射才可以访问。...1.在 resources下面手动新建文件夹,楼主新建的文件夹名称为 static,当然也可以叫其他名字,比如 demo。然后把所有的静态资源文件放到 static 或者 demo 下。...2.java 代码配置,切记,在Spring Boot 1.5版本都是靠重写WebMvcConfigurerAdapter的方法来添加自定义拦截器,消息转换器等。
SpringBoot1.x和SpringBoot2.x版本差异化还是比较大的,有些三方依赖组件有些是基于2.0版本为标准升级的,当我们将项目由1.0升级到2.0时会出现依赖的方法不存在或方法错误,需要逐个去调整... spring.jdbc.template 属性定制; 4) 提供了新配置 spring.jdbc.template 方便分页和排序; 5) 对数据库 spring.jdbc.template 自动化配置支持...静态资源文件处理 切记,springboot2的静态资源必须手动设置路径映射才可以访问。...1.在 resources下面手动新建文件夹,楼主新建的文件夹名称为 static,当然也可以叫其他名字,比如 demo。然后把所有的静态资源文件放到 static 或者 demo 下。...2.java 代码配置,切记,在Spring Boot 1.5版本都是靠重写WebMvcConfigurerAdapter的方法来添加自定义拦截器,消息转换器等。
28.1.5静态内容 默认情况下,Spring Boot从类路径中的 /static (或 /public 或 /resources 或 /META-INF/resources )目录或 ServletContext...默认情况下,资源映射到 /** ,但您可以使用 spring.mvc.static-path-pattern 属性对其进行调整。...属性自定义静态资源位置(将默认值替换为目录位置列表)。...28.1.6欢迎页面 Spring Boot支持静态和模板化的欢迎页面。它首先在配置的静态内容位置中查找 index.html 文件。如果找不到,则会查找 index 模板。...28.1.7自定义Favicon Spring Boot在配置的静态内容位置和类路径的根(按此顺序)中查找 favicon.ico 。如果存在这样的文件,它将自动用作应用程序的 favicon。
目标 为所有 Spring Boot 开发提供一个更快、更全面的入门体验。 坚持自我虽好,但当需求出现偏离,您需要能迅速摆脱出来。...中引入了thymeleaf组件,动态跳转会覆盖默认的静态跳转,默认就会跳转到/templates/下 ,一般不用删了 banner 网站copyhttps://www.bootschool.net/ascii-art...@Import({AutoConfigurationImportSelector.class})将所有符合条件的@Configuration配置都加载到当前SpringBoot创建并使用的IoC容器最好带上一句...中引入了Spring表达式语言—SpringEL,SpEL是一种强大,简洁的装配Bean的方式,他可以通过运行期间执行的表达式将值装配到我们的属性或构造函数当中,更可以调用JDK中提供的静态常量,获取外部...配置文件的位置 根目录的config文件夹下>项目根目录下>resources下的config文件夹下>项目resources的目录下 多环境下的配置 pro、prd环境:生产环境,面向外部用户的环境,