profile提供多环境支持
application.yml -> 主配置文件
application-{name}.yml -> 环境配置(挂件)
激活多环境 -> spring.profiles.active:{name}
profiles 多环境梳理
1、数据源配置
1.1 url 根据自身情况去修改为 localhost 或者 内网IP (集群或分布式系统,一定要使用内网IP)
1.2 密码 root 改为自己的密码
2、mybatis日志打印
dev 可以打印
test 可以打印
prod 无需打印
3、图片保存目录 和 图片服务请求路径配置 注:需要在FileUpload.java中修改对应环境
file.imageUserFaceLocation=/workspaces/images/foodie/faces
file.imageServerUrl=http://82.156.203.182:8088/foodie-dev-api/foodie/faces
4、BaseController从支付中心回调后端服务的回调地址
String payReturnUrl = “http://82.156.203.182:8088/foodie-dev-api/orders/notifyMerchantOrderPaid“;
application.yml
############################################################
#
# web访问端口号
#
############################################################
server:
# port: 8088
tomcat:
uri-encoding: UTF-8
max-http-header-size: 80KB
############################################################
#
# 配置数据源信息
#
############################################################
spring:
profiles:
active: prod
datasource:
type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP
driver-class-name: com.mysql.cj.jdbc.Driver # mysql驱动
# url: jdbc:mysql://localhost:3306/foodie-shop-dev?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=CTT&autoReconnect=true
username: root
# password: root
hikari:
connection-timeout: 30000 # 等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQ
minimum-idle: 5 # 最小连接数
maximum-pool-size: 20 # 最大连接数
auto-commit: true # 自动提交
idle-timeout: 600000 # 连接超时的最大时长(毫秒),超时则被释放(retired),默认:10分钟
pool-name: DateSourceHikariCP # 连接池名字
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认:30分钟
connection-test-query: SELECT 1 # 用于测试连接是否可用的查询语句
servlet:
multipart:
max-file-size: 512000 # 文件上传大小限制为500kb
max-request-size: 512000 # 请求大小限制为500kb
############################################################
#
# mybatis 配置
#
############################################################
mybatis:
type-aliases-package: com.shiers.pojo # 所有POJO类所在包路径
mapper-locations: classpath:mapper/*.xml # mapper映射文件
# configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
############################################################
#
# mybatis mapper 配置
#
############################################################
# 通用Mapper配置
mapper:
mappers: com.shiers.my.mapper.MyMapper # 通用mapper路径
not-empty: false # 在进行数据库操作的时候,判断表达式:如:username != null ,是否追加 username != ''
identity: MYSQL
# 分页插件配置
pagehelper:
helperDialect: mysql
supportMethodsArguments: true
application-dev.yml
server:
port: 8088
spring:
datasource:
url: jdbc:mysql://localhost:3306/foodie-shop-dev?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=CTT&autoReconnect=true
password: root
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
application-prod.yml
server:
port: 80
spring:
datasource:
url: jdbc:mysql://localhost:3306/foodie-shop-dev?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=CTT&autoReconnect=true
password: root
file-upload-dev.properties
file.imageUserFaceLocation=D:\\Environment\\apache-tomcat-9.0.46\\webapps\\images\\foodie\\faces
file.imageServerUrl=http://localhost:8088/foodie/faces
file-upload-prod.properties
file.imageUserFaceLocation=/workspaces/images/foodie/faces
file.imageServerUrl=http://82.156.203.182:8088/foodie-dev-api/foodie/faces