• Spring Boot 基础配置


    本章记录的是springboot的properties配置文件的基础配置

    一、介绍的是如下的节点内容

    1. Web 容器配置
    2. Properties 配置
    3. 类型安全配置属性
    4. Profile

    下面是该项目项目结构的结果说明图

    新增spring boot项目的设置说明:https://www.cnblogs.com/qianshouxiuluo/p/11703471.html

    二、web容器配置

    1. 在application.properties文件中添加tomcat配置
    # 配置服务器端口,默认是8080
    server.port=8081
    # 配置项目出错是跳转的页面
    server.error.path=/error
    #配置session失效时间30m表示30分钟,如果不写单位,默认是秒
    server.servlet.session.timeout=10m
    #表示项目名称,不配置默认是/ 如果配置了,就要在访问路径中加上配置的路径
    #server.servlet.context-path=/demo

    #设置tomcat编码格式
    server.tomcat.uri-encoding=utf-8
    #表示tomcat最大线程数
    server.tomcat.max-threads=500
    #是一个存放tomcat运行日志和临时文件的目录,如果不配置,则默认使用系统的临时目录
    #server.tomcat.basedir=/home/log/tpm
    三、Properties 配置
    1. application.properties文件有个价值的优先级从1-4依次降低;
    • 项目根目录下的 config 文件夫中
    • 项目根目录下
    • classpath 下的 config 文件夫中
    • classpath

     四、类型安全配置属性

    spring提供了@Value注解以及EnviromentAware接口来将Spring Enviroment中的数据注入到属性上,

    • 在application.properties稳健者中添加自定义配置

    • 映入自定义属性, @ConfigurationProperties 中prefix属性描述了要加载的配置文件的前缀
    @Component
    @ConfigurationProperties(prefix = "book")

    • 在HelloController.java文件中添加映射配置

    • 效果如下:

    •  如果中文显示乱码,则需要修改文件编码格式

    五、profile配置说明

    开发者在项目发布之前,一般需要频繁地在开发环境、测试环境以及生产环境之间进行切换,这个时候大量的配置需要频繁更改,例如数据库配置、redis配置、mongodb配置、jms配置等。频繁修改带来了巨大的工作量,Spring对此提供了解决方案(@Prohle注解),Spring Boot则更进一步提供了更加简洁的解决方案,Spring Boot中约定的不同环境下配置文件名称规则为application-{profile}.properties» profile占位符表示当前环境的名称,prod:生产环境;dev:开发环节;test:测试环境;local:本机环境

    • 具体配置步骤如下:

    在resources目录下新增两个文件application-prd.properties、application-dev.properties,根据情况激活对应的文件;在application.properties文件中添加如下参数配置:

      spring.profiles.active=dev

    • 截图如下:

     在学习过程中遇到的问题:

    2019-10-20 12:26:52.247 ERROR 3480 --- [nio-8081-exec-2] org.thymeleaf.TemplateEngine             : [THYMELEAF][http-nio-8081-exec-2] Exception processing template "sings": Error resolving template [sings], template might not exist or might not be accessible by any of the configured Template Resolvers

    org.thymeleaf.exceptions.TemplateInputException: Error resolving template [sings], template might not exist or might not be accessible by any of the configured Template Resolvers
     at org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateManager.java:869) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
     at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:607) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
     at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
     at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]

    错误截图:

     报错的原因是:视图解析器的前缀配置错误,错误配置是如下所示:

     需要在前缀视图路径的后面加上反斜杠,否则解析找不到路径,即:

    spring.thymeleaf.prefix=classpath:/templates/

     

     
  • 相关阅读:
    当我们开发一个接口时需要注意些什么
    一条查询语句在MySQL服务端的执行过程
    痞子衡嵌入式:基于恩智浦i.MXRT1060的MP4视频播放器(RT-Mp4Player)设计
    痞子衡嵌入式:基于恩智浦i.MXRT1010的MP3音乐播放器(RT-Mp3Player)设计
    《痞子衡嵌入式半月刊》 第 18 期
    痞子衡嵌入式:MCUBootUtility v2.4发布,轻松更换Flashloader文件
    华为HMS Core助力开发者打造精品应用,共创数智生活
    HMS Core 6.0即将发布 加码应用生态升级
    华为开发者联盟生态市场企业特惠GO第1期—应用软件专题
    卡片跳转快应用指定页面,如何点返回直接退出快应用回到卡片
  • 原文地址:https://www.cnblogs.com/qianshouxiuluo/p/11703963.html
Copyright © 2020-2023  润新知