# 应用服务器
|
server:
|
tomcat:
|
uri-encoding: UTF-8 #tomcat编码
|
port: 31000
|
|
# ═════════════════════════════════════════════════════════════════════════════
|
# 这份是 **jar 内的出厂默认值**,只在「IDE 直跑源码 / java -jar 裸跑」时生效。
|
# 容器里它会被外部 config 覆盖:docker/flow-engine/conf/application-dev.yml
|
# (Dockerfile 的 `COPY conf/ config/` 落在 WORKDIR 下,Spring Boot 外部 config/
|
# 优先级高于 jar 内 classpath,且是**按属性合并**——逐属性覆盖而非整体替换)
|
#
|
# 2026-08-03 改:原本是 JNPF 出厂的 MySQL 模板(jdbc:mysql://127.0.0.1:3306,root/123456)。
|
# 本项目 7-20 已整体迁到 PostgreSQL,那份默认值会让 IDE 直跑时**静默连到一个完全错误的库**
|
# ——不报错,只是连错。这正是 2026-08-03「找不到流程模板,请重新发布该流程」故障的形状:
|
# 宿主 flowApi 用着 MySQL 配置写了半个月,链路上没有任何一处报错,直到测试环境点不开流程。
|
# 注意本 jar 里 mysql-connector-j 与 postgresql 驱动**并存**,所以那份 MySQL 配置是真能连上的。
|
#
|
# 故改为与实际拓扑一致的 PG,并遵守两条:
|
# ① url 默认值用**容器服务名** cx-postgres(与 compose 默认一致)——不硬编码任何真实 IP,
|
# 交付给客户的 jar 里不该出现我方地址;IDE 直跑时它解析不了,会明确报
|
# UnknownHostException 而不是静默连错库,提示开发者去配 FLOW_DB_URL。
|
# ② password **不给默认值**——缺了就启动失败(fail fast)。凭据见 .env.tencent(gitignored)。
|
#
|
# ⚠️ 引擎库必须与业务库同源(同一个 PG 实例)。业务库 workflow_template.f_flowable_id
|
# 跨库引用引擎库 act_re_deployment.id_,两者不同源 = 流程模板全线失效。
|
# 背景与实测数据:tasks/flow-engine-db-unify-plan.md
|
# ═════════════════════════════════════════════════════════════════════════════
|
|
# 注意:
|
# 若使用 PostgreSQL 默认 public 模式无需配置 database-schema;指定模式时才需要
|
#flowable:
|
# database-schema: jnpf_flow
|
|
spring:
|
datasource:
|
driver-class-name: org.postgresql.Driver
|
# 【必须显式指定 type】本 jar 内 MySQL 与 PG 驱动并存;不显式声明时
|
# Spring Boot 会按 classpath 自动挑选,历史上出过「MySQL 驱动去连 postgresql:// URL」
|
# 的事故(详见 docker/flow-engine/conf/application-dev.yml 同位置注释)。
|
type: com.zaxxer.hikari.HikariDataSource
|
url: ${FLOW_DB_URL:jdbc:postgresql://cx-postgres:5432/jnpf_flow}
|
username: ${FLOW_DB_USER:jnpf_flow_app}
|
# 无默认值 = 不注入就启动失败,绝不静默连到错误的库
|
password: ${FLOW_DB_PASSWORD}
|
hikari:
|
# 共享库、多环境并存,单机池要小(PG 角色 jnpf_flow_app 有 CONNECTION LIMIT 配额)。
|
# 容量预算见 docs/db-connection-pool-guide.md。
|
maximum-pool-size: 6
|
minimum-idle: 1
|
connection-timeout: 5000 # 库满时快速失败,不无限挂起拖垮 Flowable 采集线程
|
keepalive-time: 120000 # 空闲连接保活,防被 PG/防火墙静默断开
|
max-lifetime: 1800000 # 连接最长寿命 30min,定期轮换避免老化
|
|
# 其余数据库(MySQL / SQLServer / Oracle / 达梦 / KingbaseES)的出厂样例段已删除:
|
# 本项目数据库拓扑已定为 PostgreSQL(docs/db-connection-pool-guide.md 是唯一权威),
|
# 留着那些 127.0.0.1 的假配置只会成为「静默连错库」的诱饵。
|
# 需要时从 git 历史取回本文件 2026-08-03 之前的版本。
|