前面讲到了如何搭建一个简单的springboot应用,是不是特别简单。springboot内置了tomcat,这就大大减少了我们自己配置tomcat所产生的各种各样的配置手续包括所出现的问题。通过main方法,所有启动程序都在SpringApplication.run()这个方法里,有兴趣的童鞋可以看看其内部是如何配置数据源、启动tomcat以及注入类对象的。


现在,我们从它的配置文件application.properties开始。
        springboot剔除了复杂的spring配置XML文件,所有的配置都写在此文件中。当然实际配置中还可以配置application-dev.properties和application-prod.properties测试和生成环境的配置,将application.properties作为基础公共的配置。


一、项目配置文件
          1、springboot采用properties文件作为总配置文件,默认application.properties(application-dev.properties和application-prod.properties)
            作为项目的启动配置,也就是说项目启动时会默认读取此配置文件的内容并加载某些配置</p>    
             2、springboot配置文件默认放在src/main/resource文件下,如果没有此文件springboot会采取默认配置;
            推荐使用maven,springboot也是基于maven搭建的项目,其依赖包也十分全面;因此先建立好一个application.properties
 二、默认配置     
       springboot中采取了很多默认的配置,在配置文件中需要使用默认配置名称,springboot加载时会自动读取;

一些常见的通用配置:

spring.profiles.active=prod;//激活当前环境配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource;//数据源,也就是产生数据源的jar包,这里使用druid数据源
spring.datasource.url=;//数据源,也就是MySQL或orcale连接路径
spring.datasource.username=;//数据库用户名
spring.datasource.password=;//数据库密码
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
server.port=11080;//访问端口号
server.session.timeout=1800;//session失效时间
server.error.path=/error;//错误页controller

三、自定义配置
                1、当然也可以定义自定义属性,对于自定义属性配置,需要通过注解来加载</p>

com.name="111"
com.name1="222"    @Value(value="${com.name}")
private  String name;//既可以将name值赋予变量    

2、除了在配置文件中配置,还可以在启动jar包时候改动如:java -jar xx.jar --server.port=9090
                将端口号修改为9090;符号“--”后面的即为配置文件中的配置,在多环境中,可以通过此参数随时切换配置
                <p>3、有时候我们需要引入外部的静态资源和配置文件,方便动静分离,可以如此配置:

web.upload-path=//home//web//oriflame_static//
spring.mvc.static-path-pattern=/**
spring.resources.static-locations=classpath:/METAINF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,file:${web.upload-path}

配置把默认的三个静态资源路径也记上了,最后一个是引用服务器上绝对路径

@SpringBootApplication
@PropertySource(value="file:D:/test.properties",encoding="utf-8")
public class Applcation {public static void main(final String[] args) {SpringApplication.run(Applcation.class, args);}
}  

即可以引导到d盘中的配置文件

四、springboot默认读取配置文件

springboot采用了默认读取配置文件的规则:

1、config/application.properties(项目根目录中config目录下)

           2、config/application.yml

           3、application.properties(项目根目录下)

           4、application.yml

           5、resources/config/application.properties(项目resources目录中config目录下)

           6、resources/config/application.yml

           7、resources/application.properties(项目的resources目录下),这也是我们一般存放配置文件的位置

           8、resources/application.yml

五、配置的优先级:配置文件的相互覆盖

1、如果项目中有多个配置文件会存在优先级,优先级最高的属性文件会覆盖优先级较低的:

                (1)、外置,在相对于应用程序运行目录的/congfig子目录里。

                (2)、外置,在应用程序运行的目录里

                (3)、内置,在config包内

                (4)、内置,在Classpath根目录

                (5)、如果同一个目录下,有application.yml也有application.properties,

                    默认先读取application.properties。

                (6)、如果同一个配置属性,在多个配置文件都配置了,

                    默认使用第1个读取到的,后面读取的不覆盖前面读取到的。             

             (7)、创建SpringBoot项目时, 一般的配置文件放置在项目的resources目录下不要在多个配置文件配置相同属性,根据优先级,最高的文件会覆盖较低的文件中的相同属性

六、更多配置

可以自行搜索更多配置,包括模板、mybatis、redis等等, 通过设置配置,springboot加载的时候更加灵活性的容纳这些功能;

第二章、application.properties文件的配置相关推荐

  1. spring boot 使用application.properties 进行外部配置

    2019独角兽企业重金招聘Python工程师标准>>> application.properties大家都不陌生,我们在开发的时候,经常使用它来配置一些可以手动修改而且不用编译的变量 ...

  2. java通过spring获取配置文件_springboot获取properties文件的配置内容(转载)

    1.使用@Value注解读取 读取properties配置文件时,默认读取的是application.properties. application.properties: demo.name=Nam ...

  3. 【springboot】SpringBootTest 测试时, application.properties 文件的查找顺序

    前言 springboot 2.0.0.RELEASE maven 3.5.0 application.properties 文件的查找顺序 ${project.basedir} ├─src │ ├─ ...

  4. 第二章 PX4-Pixhawk-RCS启动文件解析

    第二章 PX4-RCS启动文件解析 RCS的启动类似于linux的shell文件,如果不知道shell文件是什么东西可以理解成是为程序的流程框,它是告诉处理器应该怎么样去运行,前一章介绍的是编译成固件 ...

  5. 第二章 PX4-RCS启动文件解析

    版权声明:本文为博主原创文章,未经博主允许不得转载. 第二章 PX4-RCS启动文件解析 RCS的启动类似于linux的shell文件,如果不知道shell文件是什么东西可以理解成是为程序的流程框,它 ...

  6. 在Spring Boot里面,怎么获取定义在application.properties文件里的值

    问题:在Spring Boot里面,怎么获取定义在application.properties文件里的值. 我想访问application.properties里面提供的值,像这样: logging. ...

  7. druid.properties文件的配置

    # druid.properties文件的配置 driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://127.0.0.1:3306/plan u ...

  8. maven 打包数据库加密_SpringBoot项目application.yml文件数据库配置密码加密的方法...

    在Spring boot开发中,需要在application.yml文件里配置数据库的连接信息,或者在启动时传入数据库密码,如果不加密,传明文,数据库就直接暴露了,相当于"裸奔"了 ...

  9. Spring Boot项目application.yml文件数据库配置密码加密

    在Spring boot开发中,需要在application.yml文件里配置数据库的连接信息,或者在启动时传入数据库密码,如果不加密,传明文,数据库就直接暴露了,相当于"裸奔"了 ...

最新文章

  1. 21. 合并两个有序链表(C语言)
  2. VTK:可视化算法之TubesWithVaryingRadiusAndColors
  3. 用Python实现每秒处理120万次HTTP请求
  4. 修改Gradle本地仓库的位置 方法
  5. Java Swing Mysql实现的Ktv点歌系统项目源码附带视频运行教
  6. 程序竞赛中常用的C字符串函数
  7. Jenkins发布PHP代码
  8. 远控免杀从入门到实践
  9. Linux平台升级chrome浏览器后,再打开会提示:“您的个人资料来自新版 Google Chrome 浏览器,因此无法使用。某些功能可能无法使用。请指定其他个人资料目录,或使用新版本”
  10. 计算机的音标英语,英语国际音标
  11. 3D线激光成像数学模型简析与实现
  12. windows10如何修改pin码?
  13. grub.exe和grldr的区别和联系
  14. 修改const指针所指向的值
  15. 计算机中心云桌面建设方案,多媒体教室云桌面方案.docx
  16. 华硕z170a如何开启m2_华硕z170主板装win7教程及BIOS设置
  17. U盘为什么需要安全删除才能拔出呢?
  18. 近视手术?一个医学的阴谋?
  19. 京东2021秋招笔试题
  20. 幼儿园计算机课件制作评比表,幼儿园课件制作基本原则与评价标准_表格评价.doc...

热门文章

  1. C# 农历日期帮助类
  2. 科教导刊杂志科教导刊杂志社科教导刊编辑部2022年第9期目录
  3. ctfshow XSS漏洞web316-328
  4. Matlab中FFT运算加窗函数的验证
  5. GaussDB数据类型介绍
  6. 程序员VS文艺男!!论发型的重要性,堪比整容!
  7. 公共自行车租赁点无线管理解决方案
  8. 攻击篇--远程控制(一)生成被控端与主控端
  9. 【程序设计】暴力枚举
  10. 删除桌面图标计算机权限删除,Win7系统桌面图标删除不了的处理方法