| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- server:
- port: 8001
- servlet:
- context-path: /api/v1
- spring:
- threads:
- virtual:
- enabled: true
- application:
- name: payment-platform
- profiles:
- active: dev
- servlet:
- multipart:
- max-file-size: 10MB
- max-request-size: 20MB
- jackson:
- time-zone: Asia/Shanghai
- datasource:
- type: com.alibaba.druid.pool.DruidDataSource
- druid:
- driver-class-name: org.postgresql.Driver
- url: jdbc:postgresql://localhost:5432/payment_platform_java?currentSchema=public&stringtype=unspecified
- username: admin
- password: 'xjz#123321'
- initial-size: 5
- min-idle: 5
- max-active: 20
- max-wait: 60000
- validation-query: SELECT 1
- test-while-idle: true
- test-on-borrow: false
- test-on-return: false
- # 每个物理连接建立后立刻把会话时区钉成北京时间。
- #
- # 为什么必须有这一行:本项目所有 timestamp without time zone 列一律存北京墙钟
- # (由 ShanghaiOffsetDateTimeTypeHandler 保证),那部分与会话时区无关;
- # 但业务表里另有 4 个 timestamptz 列存的是「瞬间」,读出来是会话时区的墙钟 ——
- # sys_invitation_code.used_time / created_time / updated_time、sys_user.last_login
- # 这几列的正确性完全押在会话时区上,所以在这里显式钉死,不依赖服务端配置。
- #
- # 已核对 druid-spring-boot-3-starter 1.2.20 的 spring-configuration-metadata.json:
- # 属性名就是 connection-init-sqls(Collection<String>);
- # 并已反编译 DruidAbstractDataSource 确认它在建连后逐条
- # connection.createStatement() + Statement.execute(sql)。
- connection-init-sqls:
- - SET TIME ZONE 'Asia/Shanghai'
- data:
- redis:
- host: redis
- port: 6379
- database: 1
- password: '123456#xjz'
- timeout: 10s
- lettuce:
- pool:
- max-active: 20
- max-idle: 10
- min-idle: 5
- mybatis-plus:
- mapper-locations: classpath*:/mapper/**/*.xml
- type-aliases-package: com.payment.platform.module
- configuration:
- map-underscore-to-camel-case: true
- log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
- # JWT
- jwt:
- secret: vgb0tnl9d58+6n-6h-ea&u^1#1sccp!794=krylxcjq75vzps$
- algorithm: HmacSHA256
- access-token-expire: 3600
- refresh-token-expire: 7200
- token-type: bearer
- sliding-expire: true
- # 验证码
- captcha:
- enable: true
- expire-seconds: 60
- # Knife4j
- springdoc:
- swagger-ui:
- path: /swagger-ui.html
- api-docs:
- path: /v3/api-docs
- knife4j:
- enable: true
- setting:
- language: zh_cn
- # Alipay(仅作 fallback — 正常运行时使用 pay_service_provider 表配置)
- alipay:
- app-id: ""
- app-private-key: ""
- alipay-public-key: ""
- server-url: https://openapi.alipay.com/gateway.do
- format: JSON
- charset: UTF-8
- sign-type: RSA2
- sandbox: false
- notify-url: ""
- return-url: ""
- # OAuth 授权回调完成后的前端跳转地址(如 http://localhost:5180)— openid 授权 URL 生成时校验非空
- oauth-front-url: "https://qcsj88888.com"
- # OAuth 授权回调地址(完整 URL)— 支付宝开放平台「授权回调地址」白名单只能配一个,与当面付 app_auth_code 授权共用(按参数分流),须与白名单完全一致
- oauth-redirect-uri: "https://qcsj88888.com/api/v1/payment/aplipay/auth"
- max-retries: 3
- request-timeout: 30
- rate-limit: 100
- # Alibaba Cloud (OSS等)
- alibaba-cloud:
- access-key-id: LTAI5t5jHkQMY2T7V5n4ofMr
- access-key-secret: RYaofbQBRc93LC1oxCbgJGTVMCzNW4
- # File upload (OSS)
- file:
- upload-path: static/upload
- allowed-extensions: .gif,.jpg,.jpeg,.png,.ico,.svg,.xls,.xlsx,.pdf,.doc,.docx
- max-size: 10485760
- # Aliyun OSS
- aliyun:
- oss:
- endpoint: "oss-cn-beijing.aliyuncs.com"
- bucket: "hunanxiaojunzioss"
- access-key-id: "LTAI5t5jHkQMY2T7V5n4ofMr"
- access-key-secret: "RYaofbQBRc93LC1oxCbgJGTVMCzNW4"
- custom-domain: ""
- # Logging
- logging:
- file:
- path: ./logs
- level:
- com.payment.platform: info
- org.springframework.security: info
|