1. 在 spring boot 中,有两种配置文件,一种是application.properties,另一种是application.yml,两种都可以配置spring boot 项目中的一些变量的定义,参数的设置等。下面来说说两者的区别。
application.properties 配置文件在写的时候要写完整,如:
spring.profiles.active=dev
spring.datasource.data-username=root
spring.datasource.data-password=root
在yml 文件中配置的话,写法如下:
spring:
profiles:
active: prod
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test
username: root
password: root
yml 文件在写的时候层次感强,而且少写了代码。所以现在很多人都使用yml配置文件。
2. 在项目中配置多套环境的配置方法。
因为现在一个项目有好多环境,开发环境,测试环境,准生产环境,生产环境,每个环境的参数不同,所以我们就可以把每个环境的参数配置到yml文件中,这样在想用哪个环境的时候只需要在主配置文件中将用的配置文件写上就行如下:
spring:
profiles:
active: prod
这行配置在application.yml 文件中,意思是当前起作用的配置文件是application_prod.yml,其他的配置文件命名为 application_dev.yml,application_bat.yml等。
3. 项目启动的时候也可以设置 Java -jar xxxxxx.jar spring.profiles.actiove=prod 也可以这样启动设置配置文件,但是这只是用于开发和测试。
4. 配置文件数据的读取:
比如我在文件中配置了一个
massage:
data:
name: qibaoyi
我在类中想要获取他 需要这样去写:
@Value("${message.data.name}")
private String name;
后面你取到变量name 的值就是配置文件中配置的值。
5. 大家需要注意一点,配置文件中参数的写法:name: qibaoyi中间是有一个空格的,在IDEA 编译器中它会提醒你的。
server:
prot: 8888 #配置访问的端口
servlet:
context-path: /xxx #配置访问时的项目名
spring:
devtools:
restart:
enabled: true #这个好像是热加载,每次代码有改动就自动重启,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。
datasource:
url: jdbc:mysql://localhost:3306/xxx?useUnicode=true&characterEncoding=UTF-8&useSSL=true #配置数据库的路径
username: root #数据库登录名
password: root #登陆密码
type: com.alibaba.druid.pool.DruidDataSource #这个可以看一下
driver-class-name: com.mysql.jdbc.Driver
filters: stat
maxActive: 20 #连接池的最大值,同一时间可以从池分配的最多连接数量,0时无限制
initialSize: 1 #连接初始值,连接池启动时创建的连接数量的初始值
maxWait: 60000
minIdle: 1 #最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true #是否对已备语句进行池管理(布尔值),是否对PreparedStatement进行缓存
maxOpenPreparedStatements: 20
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
mybatis-plus:
mapper-locations: classpath*:mapper/**/*Mapper.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.yudao.platform.entity.*
global-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: 0
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
field-strategy: 2
#驼峰下划线转换
db-column-underline: false
#刷新mapper 调试神器
refresh-mapper: true
#数据库大写下划线转换
#capital-mode: true
# Sequence序列接口实现类配置
#key-generator: com.baomidou.mybatisplus.incrementer.OracleKeyGenerator
#逻辑删除配置
logic-delete-value: 1
logic-not-delete-value: 0
#自定义填充策略接口实现
#meta-object-handler: com.baomidou.springboot.xxx
#自定义SQL注入器
# sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
call-setters-on-nulls: true
java配置文件数据库的yml配置文件 application.yml数据库配置
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
SpringBoot--配置文件--用法--application.yml
网址:bootstrap与application网址SpringCloud入门之常用的配置文件
spring boot java spring jar 配置文件 -
SpringBoot配置文件application.properties和application.yml
一、application配置优先级1.文件或路径的优先级:4>3>2>1,4的属性会覆盖其他的2.properties的属性会覆盖yml的属性二、bootstrap和application的加载顺序网上有些说法是:bootstrap.yml 用来程序引导时执行,应用于更加早期配置信息读取。可以理解成系统级别的一些参数配置,这些参数一般是不会变动的。一旦bootStrap.yml 被加载,则内容不会被覆盖。ps:会不会覆盖,在自己的项目中进行实测。经过实际测试
spring boot java spring bootstrap 优先级 -
Java yml 配置文件写数据库连接 yml配置数据源
1、导入druid数据源<!-- 引入druid数据源--> <!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba</groupId>
Java yml 配置文件写数据库连接 spring boot spring bc mysql -
java中yml文件数据库配置
这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为。官网是这样讲的,证明这个配置是很重要的。 这里就把官网的所有配置根据自己的理解来写一遍:设置名描述有效值默认值cacheEnabled全局性地开启或关闭所有映射器配置文件中已配置的任何缓存。 &
java中yml文件数据库配置 mybatis spring boot 数据库 延迟加载