赞
踩
https://www.cnblogs.com/llp2333/p/17321306.html
1、内置默认值:Spring Boot会首先加载内置的默认值,这些默认值定义在Spring Boot的代码中,例如,内置的默认端口号为8080。 2、应用级别(指项目中设置的应用名)的配置文件:Spring Boot会从以下位置加载应用级别的配置文件,这些位置按照优先级逐一检查: 当前目录下的/config文件夹。 当前目录。 classpath下的/config包。 classpath根目录。 例如,如果应用的名称为"myapp",则Spring Boot会尝试加载以下文件: ./config/myapp.properties ./config/myapp.yml ./myapp.properties ./myapp.yml classpath:/config/myapp.properties classpath:/config/myapp.yml classpath:/myapp.properties classpath:/myapp.yml 3、项目级别(指项目的文件,不受应用名影响)的配置文件:Spring Boot会从以下位置加载项目级别的配置文件,这些位置按照优先级逐一检查: 当前目录下的/config文件夹。 当前目录。 classpath下的/config包。 classpath根目录。 例如,如果应用的名称为"myapp",则Spring Boot会尝试加载以下文件: ./config/application.properties ./config/application.yml ./application.properties ./application.yml classpath:/config/application.properties classpath:/config/application.yml classpath:/application.properties classpath:/application.yml
(最优先)命令行参数:Spring Boot会加载命令行中指定的任何属性值,这些属性值会覆盖之前加载的任何属性值。例如,通过在命令行中指定–server.port=9090可以覆盖默认的8080端口号。
应用级别和项目级别的加载优先级逐一降低,即优先级高的配置文件会覆盖优先级低的配置文件中的属性值。因此,应用级别的配置文件会覆盖项目级别的配置文件中的属性值,而命令行参数会覆盖所有其他位置的属性值。
springboot 应用程序端口号,修改后需要重启项目
springboot 应用程序项目路径,即接口默认前缀
使用了 c3p0 外部依赖
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GVHgQSiy-1691978606816)(/api/project/11997256/files/33058694/imagePreview)]
mysql.c3p[0].jdbcUrl 的值是数据库jdbc链接字符串(参考文档: MySQL JDBC URL各参数详解https://zhuanlan.zhihu.com/p/621493992)
格式:
jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值2]...
(注:在xml配置文件中,url中的 & 符号需要转义成 & )
参数名称 参数说明 缺省值 user 用户名 password 用户密码(用于连接数据库) useUnicode 是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true false useSSL MySQL在高版本需要指明是否进行SSL连接 在mysql连接字符串url中加入ssl=true或者false即可 characterEncoding 当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk false autoReconnect 当数据库连接异常中断时,是否自动重新连接? false autoReconnectForPools 是否使用针对数据库连接池的重连策略 false failOverReadOnly 是否使用针对数据库连接池的重连策略 true maxReconnects autoReconnect设置为true时,重试连接的次数 3 initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒 2 connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本 0 socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时 0 allowMultiQueries socket操作(读写)超时,单位:毫秒。 0表示永不超时 false serverTimezone 设置时区 例如 serverTimezone=UTC(统一标准世界时间)或serverTimezone=Asia/Shanghai(中国时区) serverTimezone 如果tinyInt1isBit =true(默认),且tinyInt存储长度为1 ,则转为java.lang.Boolean 。否则转为java.lang.Integer。 true
图1中的 3 个键必须有:dataSourceGroup,dataSourceBeanName,sessionFactoryBeanName
格式按图中说明设定,值与数据名有关,详细用途未知
图1
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MLrfRslZ-1691978606817)(/api/project/11997256/files/33058724/imagePreview)]
图2中文件 src>main>java>com>ruien>core>annotation>DbInfo.java 中 sourceGroup() 的 default 值,和 mysql.c3p[0].jdbcUrl 的数据库名称,和图1中的 dataSourceGroup 的值,3个值应设置一致
注:实际链接数据库只受mysql.c3p[0].jdbcUrl影响,其他2个值的影响未知
图2
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cXuDHT3t-1691978606817)(/api/project/11997256/files/33058792/imagePreview)]
######### springboot 应用程序端口号 # (默认8080) server.port=112 ######### springboot 应用程序名称 # 区分微服务、日志等 spring.application.name=ruien-basic-manager ######### springboot 应用程序项目路径 # (默认 / ,例 localhost:8080/xxxxxx) #server.servlet.context-path=/springboot/ ########## springboot 文件上传配置项 # (默认true)是否允许附件上传 #spring.servlet.multipart.enabled=true # 指定临时文件的存放目录 #spring.servlet.multipart.location= # (默认0)限定附件上传超过一定长度,就先写到临时文件 #spring.servlet.multipart.file-size-threshold=0 # (默认1MB)指定单个上传文件的最大长度 #spring.servlet.multipart.max-file-size=100MB # (默认10MB)指定单次HTTP请求的上传最大长度 #spring.servlet.multipart.max-request-size=1024MB ######### jetty 的配置项 # Maximum size in bytes of the HTTP post or put content #server.jetty.max-http-post-size=1024000 # http最大请求头大小,默认8K # 一般用于 base64 方式传图片需要修改该大小 # 该设置有问题,设置大数后,每个请求都是该大小,容易造成内存溢出,参考 https://www.jianshu.com/p/ab054620da64 #server.max-http-header-size=1024000 ######### 数据库(参考 https://blog.csdn.net/qq_42495966/article/details/109292268) ### 最基础的参数配置 # 数据库驱动 mysql.c3p[0].driverClass=com.mysql.cj.jdbc.Driver # jdbc数据库连接地址(值换行用“\”表示) mysql.c3p[0].jdbcUrl=jdbc:mysql://127.0.0.1:3306/ruien_community\ ?\ allowMultiQueries=true\ &serverTimezone=Asia/Shanghai\ &useUnicode=true\ &characterEncoding=UTF-8\ &useJDBCCompliantTimezoneShift=true # 数据库连接用户名 mysql.c3p[0].user=root # 数据库连接密码 mysql.c3p[0].password= ### 基础的参数配置 # (默认3)连接池初始化时创建的连接数(介于maxPoolSize和minPoolSize之间) mysql.c3p[0].initialPoolSize=3 # (默认15)连接池中拥有的最大连接数,如果获得新连接时会使连接总数超过这个值则不会再获取新连接,而是等待其他连接释放,所以这个值有可能会设计地很大 mysql.c3p[0].maxPoolSize=15 # (默认3)连接池保持的最小连接数,后面的maxIdleTimeExcessConnections跟这个配合使用来减轻连接池的负载 mysql.c3p[0].minPoolSize=3 # (默认3)连接池在无空闲连接可用时一次性创建的新数据库连接数 mysql.c3p[0].acquireIncrement=3 ### 管理池大小和连接时间的配置 # (默认0)连接的最大空闲时间,如果超过这个时间,某个数据库连接还没有被使用,则会断开掉这个连接如果为0,则永远不会断开连接 mysql.c3p[0].maxIdleTime=0 ### 配置连接测试 # (默认0)每个几秒检查所有连接池中的空闲连接 mysql.c3p[0].idleConnectionTestPeriod=0 # (默认false)如果为true,在连接释放的同事将校验连接的有效性。 mysql.c3p[0].testConnectionOnCheckout=false ### 配置语句池 # (默认0)JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量 mysql.c3p[0].maxStatements=0 ### 配置数据库的中断恢复 # (默认30)定义在从数据库获取新连接失败后重复尝试的次数 mysql.c3p[0].acquireRetryAttempts=30 # (默认1000)两次连接间隔时间,单位毫秒 mysql.c3p[0].acquireRetryDelay=1000 # (默认false)获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。 # 但是数据源仍有效保留,并在下次调用getConnection()的时候继续尝试获取连接。 # 如果设为true,那么在尝试获取连接失败后该数据源将申明已断开并永久关闭 mysql.c3p[0].breakAfterAcquireFailure=false ### 未知用途,但必须有 # 值=数据库名 mysql.c3p[0].dataSourceGroup=ruien_community # 值=dataSource_数据库名_default mysql.c3p[0].dataSourceBeanName=dataSource_ruien_community_default # 值=sqlSessionFactory_数据库名_default mysql.c3p[0].sessionFactoryBeanName=sqlSessionFactory_ruien_community_default ######### mybatis 的配置项(基于Java的持久层框架) # Mapper接口和Mapper映射文件分开存放,在resources下需指定mapper映射文件存放的位置 mybatis.mapper-locations=classpath:mapper/**/*.xml # 自动将以下划线方式命名的数据库列映射到Java对象的驼峰式命名属性中,默认false,true/false mybatis.configuration.map-underscore-to-camel-case=true ######### mybatis分页插件 的配置项 # PageHelper分页插件的起始下标是1,如果起始页面设置为0,那么返回的结果将和下标是1的重复!!!! # offset作为PageNum使用 pagehelper.offsetAsPageNum=true # RowBounds方式是否做count查询 pagehelper.rowBoundsWithCount=true # 当设置为true的时候,如果pagesize设置为0(或RowBounds的limit=0),就不执行分页 pagehelper.pageSizeZero=true # 分页合理化,true开启,如果分页参数不合理会自动修正。默认false不启用 pagehelper.reasonable=false # 用于从对象中根据属性名取值, 可以配置 #pageNum,pageSize,count,pageSizeZero,reasonable,不配置映射的用默认值 # 默认值为#pageNum=pageNum;pageSize=pageSize;count=countSql;reasonable=reasonable;pageSizeZe#ro=pageSizeZero pagehelper.params=pageNum=pageHelperStart;pageSize=pageHelperRows; # 默认值false,分页插件会从查询方法的参数值中,自动根据 params 配置的字段中取值,查找到合适的值时就会自动分页。 pagehelper.supportMethodsArguments=false ######### minio 配置项 # 上传服务器地址 minio.url= # 外网访问地址 minio.domainUrl= # 公钥 minio.accessKey= # 私钥 minio.secretKey= ######### 设备服务相关地址配置 # 考勤机服务地址 device.attendance-machine.request-url= # 门禁服务地址 device.access-control.request-url= # 水电表服务地址 device.water-electricity-meter.request-url= # 上传人脸服务地址 device.face.request-url= # 上传人脸库集合名称配置 device.face.collection-name=
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。