Files
danyang-match/backend/src/main/resources/application.yml
T

105 lines
2.4 KiB
YAML
Raw Normal View History

2026-09-09 22:05:00 +08:00
server:
port: 8080
servlet:
context-path: /api/v1
spring:
application:
name: danyang-match-platform
profiles:
active: dev
datasource:
url: jdbc:postgresql://${DB_HOST:localhost}:${DB_PORT:5432}/${DB_NAME:danyang_match}
username: ${DB_USER:postgres}
password: ${DB_PASSWORD:postgres}
driver-class-name: org.postgresql.Driver
hikari:
maximum-pool-size: 20
minimum-idle: 5
idle-timeout: 30000
max-lifetime: 1800000
connection-timeout: 30000
jackson:
default-property-inclusion: non_null
serialization:
write-dates-as-timestamps: false
deserialization:
fail-on-unknown-properties: false
flyway:
enabled: true
locations: classpath:db/migration
baseline-on-migrate: true
baseline-version: 0
out-of-order: false
data:
redis:
host: ${REDIS_HOST:localhost}
port: ${REDIS_PORT:6379}
password: ${REDIS_PASSWORD:}
timeout: 5000ms
main:
allow-bean-definition-overriding: false
# MyBatis-Plus
mybatis-plus:
configuration:
map-underscore-to-camel-case: true
log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
type-handlers-package: com.danyang.match.platform.shared.typehandler
global-config:
db-config:
id-type: assign_uuid
# Logging
logging:
level:
root: INFO
com.danyang.match.platform: DEBUG
org.springframework.security: INFO
org.mybatis: DEBUG
pattern:
console: '%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%X{requestId}] %-5level %logger{36} - %msg%n'
# Actuator
management:
endpoints:
web:
exposure:
include: health,info,metrics,prometheus
endpoint:
health:
show-details: when_authorized
show-components: always
health:
db:
enabled: true
redis:
enabled: true
# Spring Security (default disable for dev, will be configured in security module)
spring.security:
user:
name: admin
password: admin
# Rate limiting
rate-limit:
max-requests-per-window: 20
window-seconds: 60
# 受控联系授权(ZC-MM-003 / B1 立项,canonical key 见 ContactAuthorizationConfig;治理登记 T06 config-register)
# 注意:代码缺省 enabled=false(fail-safe),生产显式开启;新环境漏配时机制整体关闭而非意外开放。
matchmaker:
contact:
enabled: true
approver-authorities: matchmaker.team.assign,matchmaker.assign
consent-deadline-hours: 72
default-validity-days: 7
retention-days: 365