采用Spring Boot + Freemarker开发Web项目时,由于一些静态文件比较大,如果是在PC上访问影响不大,当在手机上访问时,特别是用流量访问时速度会慢很多,而且很耗流量。...通过对请求进行抓包,可以发现每次进入一个页面都需要加载静态文件,如果不差钱的公司可以将静态文件放在CDN上来加快访问速度,或者用Nginx来做静态文件的缓存。...今天给大家介绍一种其他的缓存优化方式,通过Spring的缓存机制来缓存静态文件,在Spring Boot中配置静态文件缓存只需要在配置文件中加入下面的配置即可: # 资源缓存时间,单位秒 spring.resources.cache-period...:https://docs.spring.io/spring-boot/docs/1.5.4.RELEASE/reference/htmlsingle/ 的SPRING RESOURCES HANDLING...上面讲的方式是通过自己去生成version来控制文件的变更,其实Spring Mvc中已经提供了静态文件的版本管理功能,有二种方式,一种是通过资源的MD5来生成版本号,文件内容变了,MD5肯定也变了。
Spring boot提供了默认的application-default.properties文件,在没有定义任何profile时会加载。...自定义日志配置 将相应jar包放到依赖中,即可激活对应的日志框架。将日志的配置文件放到classpath的根目录下,或者放到logging.config指定路径下,就可以自定义日志的输出。...1.2 静态内容 默认情况下,Spring Boot从classpath的/static(/public,/resources或/META-INF/resources)的文件夹或从ServletContext...根目录提供静态内容。 ...(加载静态文件)。
spring boot项目只有src目录,没有webapp目录,会将静态访问(html/图片等)映射到其自动配置的静态目录,如下 /static /public /resources /META-INF.../resources 所以,一般我们会配置spring.resourcess.static-locations的值: web.upload-path=E:/ spring.mvc.static-path-pattern...spring boot建议不要使用JSP,默认使用Thymeleaf来做动态页面。...return "/index": 跳转到 templates/index.html动态页面,templates目录为spring boot默认配置的动态页面路径。 ?...其中:templates目录为spring boot默认配置的动态页面路径。
简介 服务端接收上传的目的是提供文件的访问服务,那么对于SpringBoot而言,可以提供文件访问的静态资源目录: classpath:/META-INF/resources/ , classpath:.../static/ , classpath:/public/ , classpath:/resources/ 上传目录自定义配置 Spring boot 为我们提供了使用spring.resources.static-locations...配置自定义静态文件的位置。...,即:文件上传保存根路径 配置spring.resources.static-locations,除了带上Spring Boot默认的静态资源路径之外,加上file:${web.upload-path}...该路径下的静态资源可以直接对外提供HTTP访问服务。
前言 文件上传的功能,基本上在所有的企业级应用都会有,那么在一个前后端分离的架构中,文件上传的功能又是如何去实现的呢。...一般前端采用的是单页面应用,不会发生刷新和表单的提交,大部分都是异步完成的,他提交文件的时候,只是提交一个文件的路径上来。...,第一个参数指定上传时参数的name,第二个参数指定上传的文件名字,第三个参数指定enctype类型,第四个参数就是上传的文件。...,以上是我们代码的方便,而在我们实际的开发中,通常把文件存在到云服务上面,如阿里云、青牛云。...我们的文件上传下载已经讲完了,各位小伙伴们别忘了点关注哦。
Boot 初始化工具创建的项目,默认都会存在 resources/static 目录,很多小伙伴也知道静态资源只要放到这个目录下,就可以直接访问,除了这里还有没有其他可以放静态资源的位置呢?...我们知道,在 Spring Boot 项目中,默认是没有 webapp 这个目录的,当然我们也可以自己添加(例如在需要使用JSP的时候),这里第 5 个 / 其实就是表示 webapp 目录中的静态资源也不被拦截...如果同一个文件分别出现在五个目录下,那么优先级也是按照上面列出的顺序。...其中, / 表示 webapp 目录,即 webapp 中的静态文件也可以直接访问。静态资源的匹配路径按照定义路径优先级依次降低。因此这里的配置和我们前面提到的如出一辙。...2.3.2 Java 代码定义 当然,在 Spring Boot 中我们也可以通过 Java 代码来自定义,方式和 Java 配置的 SSM 比较类似,如下: @Configuration public
在 Spring Boot 中,配置文件用于配置应用程序的各种属性和参数。Spring Boot 支持多种类型的配置文件,包括 YAML、Properties、XML 等。...在本文中,我们将介绍 Spring Boot 的配置文件类型、配置文件的读取顺序和优先级、配置文件的语法和示例等方面。...下面是 Spring Boot 配置文件读取的顺序和优先级:配置文件的位置Spring Boot 默认会在以下位置查找配置文件:file:./config/file:....配置文件的优先级Spring Boot 的配置文件有优先级之分,优先级高的配置文件会覆盖优先级低的配置文件。...下面是 Spring Boot 配置文件的优先级从高到低的顺序:在启动时通过命令行参数指定的配置文件;在运行目录下的配置文件(如:.
当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥Spring Boot 中的静态资源加载问题:“松哥,我的HTML页面好像没有样式?”...我们知道,在 Spring Boot 项目中,默认是没有 webapp 这个目录的,当然我们也可以自己添加(例如在需要使用JSP的时候),这里第5个 / 其实就是表示 webapp 目录中的静态资源也不被拦截...如果同一个文件分别出现在五个目录下,那么优先级也是按照上面列出的顺序。...其中,/表示webapp目录,即webapp中的静态文件也可以直接访问。静态资源的匹配路径按照定义路径优先级依次降低。因此这里的配置和我们前面提到的如出一辙。...Java 代码定义 当然,在Spring Boot中我们也可以通过 Java代码来自定义,方式和 Java 配置的 SSM 比较类似,如下: @Configuration public class WebMVCConfig
昨天刚好看到一篇关于利用Spring Boot 3.2的虚拟线程来做静态文件服务器的性能测试,这里分享出来,给大家一些参考。...软件版本为: Java v21.0.1 Spring Boot 3.2.1 程序配置 除了主 Java 类之外,不需要编写任何 Java 文件,静态文件服务器只能通过配置就能发挥作用。...大小完全相同但数据不同的 100K 文件被放置在静态资源目录中。...CPU 和内存的资源使用情况监控将补充此分析,从而提供不同工作负载下系统性能的全面了解。...测试结果 结果以图表形式呈现如下: 总结 对静态文件服务的分析表明,物理线程在性能和资源效率方面略胜一筹(与我们的预期相反)。
Dokcer篇 1:Docker的用处 2:Docker的三个概念 3:Dokcer启动镜像的参数介绍 4:如何制作一个镜像,Dockerfike的编写 命令的讲解 5:使用Docker启动一些常用的项目...nginx.exe -s stop # 重启 nginx.exe -s reload Dokcer相关 #运行一个Nginx dokcer run -d -p 8080:80 nginx # 挂载外部目录到...nginx docker run -p 8080:80 -d -v /home/nginx/www/hello-vue:/usr/share/nginx/html nginx # 挂载外部配置文件与今静态目录...\ --run-untagged="true" \ --locked="false" \ --access-level="not_protected" docker nginx 镜像外挂 静态文件目录...nginx简单部署静态文件目录 docker nginx镜像 挂在外部配置文件以及静态目录 docker构建前端项目的镜像 多种示例 写法
二、Spring boot默认静态资源访问方式 Spring boot默认对/**的访问可以直接访问四个目录下的文件: classpath:/public/ classpath:/resources/...而类路径下的resources是spring boot默认的静态资源文件夹之一,和public、static以及MEAT-INFO/resources的功能相同。...三、自定义静态资源目录 通过第二节内容我们已经知道了Spring boot默认可以访问的静态资源的目录,但是大家肯定会想,这个目录是固定的吗?我们可不可以自己定义静态资源目录?...答案是肯定的,我们现在就来自定义一个静态资源目录,我们定义一个images的目录来存放图片,所有/image/**的路径都会访问images目录下的资源: ?...WebMvcConfigurerAdapter是Spring提供的一个配置mvc的适配器,里面有很多配置的方法,addResourceHandlers就是专门处理静态资源的方法,其他方法后续我们还会讲到
Spring Boot提供了多种方式来进行配置文件的管理,本文将重点介绍yaml和properties两种格式的配置文件。...三、实际应用场景 在实际应用场景中,我们可能需要根据不同的环境来加载不同的配置文件。Spring Boot提供了多种方式来进行环境配置。...例如: application-dev.yaml #开发环境配置文件 application-prod.yaml #生产环境配置文件 此外,Spring Boot还提供了@ConfigurationProperties...注解来自动注入配置文件。...配置文件的管理对于Spring Boot应用程序的性能和可维护性有着至关重要的作用。
custom.name}") public void setCustomName(String customName) { CUSTOM_NAME = customName; } } Spring...Boot 配置提示 resources/META-INF/spring-configuration-metadata.json { "properties": [ { "name..."type": "java.lang.String", "sourceType": "com.anoyi.xxx.config.StaticProperties" } ] } Spring...Boot 配置 application.properties custom.name=anoyi 至此,即可在 Spring Boot 全局任意引用 StaticProperties.CUSTOM_NAME
前两章我们分享了Spring boot对Restful 的支持,不过Restful的接口通常仅仅返回数据。而做web开发的时候,我们往往会有很多静态资源,如html、图片、css等。...因为只做简单演示,所以这里只处理了文本类型的文件,图片文件可以做类似的处理。当然,我们在实际中肯定不会这么做,Spring boot也肯定有更好的解决办法。...二、Spring boot默认静态资源访问方式 Spring boot默认对/**的访问可以直接访问四个目录下的文件: classpath:/public/ classpath:/resources...三、自定义静态资源目录 通过第二节内容我们已经知道了Spring boot默认可以访问的静态资源的目录,但是大家肯定会想,这个目录是固定的吗?我们可不可以自己定义静态资源目录?...答案是肯定的,我们现在就来自定义一个静态资源目录,我们定义一个images的目录来存放图片,所有/image/**的路径都会访问images目录下的资源: @Configuration public class
静态资源包括但不限于CSS、JavaScript、HTML文件和图像等。在Spring Boot中,通过处理静态资源,我们可以实现前端网页的访问。...在pom.xml文件中,我们需要添加对Spring Boot的依赖项以及其他必要的依赖项,例如对Thymeleaf模板引擎的支持。我们还需要将资源文件夹添加为项目的源文件夹。...在Spring Boot中,我们可以通过在application.properties文件中设置spring.mvc.static-path-pattern属性来配置静态资源的URL路径。...默认情况下,Spring Boot会在classpath下搜索public、static和resources文件夹中的静态资源。...Thymeleaf是一种流行的模板引擎,它提供了一种简单而强大的方式来创建动态网页。 我们需要将以下代码添加到application.properties文件中来启用Thymeleaf模板引擎。
因为只做简单演示,所以这里只处理了文本类型的文件,图片文件可以做类似的处理。当然,我们在实际中肯定不会这么做,Spring Boot 也肯定有更好的解决办法。...二、Spring boot默认静态资源访问方式 Spring boot默认对/**的访问可以直接访问四个目录下的文件: classpath:/public/ classpath:/resources/...三、自定义静态资源目录 通过第二节内容我们已经知道了Spring boot默认可以访问的静态资源的目录,但是大家肯定会想,这个目录是固定的吗?我们可不可以自己定义静态资源目录?...答案是肯定的,我们现在就来自定义一个静态资源目录,我们定义一个images的目录来存放图片,所有/image/**的路径都会访问images目录下的资源: @Configuration public class...WebMvcConfigurerAdapter是Spring提供的一个配置mvc的适配器,里面有很多配置的方法,addResourceHandlers就是专门处理静态资源的方法,其他方法后续我们还会讲到
Spring Boot 现在通过创建和预配置 RestClient.Builder 的方式创建 RestClient 实例。...它提供了一个函数式的 API,就像 Spring WebFlux 中对应的 WebClient API 类似。...它提供了一个流畅 API 来执行常见的数据库操作。 Spring Boot 3.1 首次引入了 SSL Bundle,用于配置和使用 SSL 信息,比如 keystore、证书和私钥等。...通过支持 CRaC 项目(在某些 OpenJDK 发行版中已可用) 和 Loom 项目(从 Java 21 可用),Spring Boot 3.2 提供了优异的运行时效率。...这些特性与现有的支持 GraalVM 原生镜像的工作相结合,为 Spring Boot 开发人员在生产环境中寻找最佳体验提供了绝佳的机会。 关于升级和值得关注的完整变更列表,请参阅官方发布说明。
Spring Boot允许你外部化你的配置,这样你就可以在不同的环境中使用相同的应用程序代码,你可以使用properties文件、YAML文件、环境变量和命令行参数来外部化配置,属性值可以通过使用@Value...注解直接注入到你的bean中,通过Spring的Environment抽象访问,或者通过@ConfigurationProperties绑定到结构化对象。...那么如何进行Spring Boot 注入外部配置到应用内部的静态变量呢?...Boot 配置提示 resources/META-INF/spring-configuration-metadata.json { "properties": [ { "name...Boot 配置 application.properties custom.name=anoyi 至此,即可在 Spring Boot 全局任意引用 StaticProperties.CUSTOM_NAME
我们在接入用户系统时需要将接口地址,错误地址,调用地址写入到配置文件里,我们使用的是.yml文件,在application.yml中写入需要写入的地址.yml必须规定格式编写 #根据token获取用户信息的接口地址...token-url: "xxx" #错误返回的地址 error-url: "xxx" #正确返回的地址 success-url: "xxx" 在代码中直接通过@Value("参数名")方式取值 示例
领取专属 10元无门槛券
手把手带您无忧上云