zoukankan      html  css  js  c++  java
  • 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/

     

     
  • 相关阅读:
    张晓涵组《课程设计》结题报告
    20145218张晓涵小组课程设计中期检查
    wireshark使用简介
    20145218张晓涵 web安全基础实践
    20145218张晓涵_Web基础
    2017-2018-1 20155333 《信息安全系统设计基础》第十四周学习总结
    第十六周课堂测试
    2017-2018-1 20155333 《信息安全系统设计基础》第十三周学习总结
    2017-2018-1 20155333 《信息安全系统设计基础》实验五通讯协议设计
    2017-2018-1 20155333 《信息安全系统设计基础》第十一周学习总结
  • 原文地址:https://www.cnblogs.com/qianshouxiuluo/p/11703963.html
Copyright © 2011-2022 走看看