ContiNew

配置说明

了解 ContiNew Admin 配置文件的组织方式、环境变量注入规则与配置归属原则,知道某个配置该去哪改。

本文是 4.x 的归档文档(冻结于 v4.2.0)。该分支只接收勘误修正, 内容基本不再变动;文中的源码路径、配置项与版本号均以 4.2.x 为准,不建议用于新项目。

新项目请查看 5.x 最新文档。已在 4.2.x 上运行的项目,本文仍是可靠依据。

ContiNew Admin 后端的配置文件全部位于 continew-server 模块的 src/main/resources/config/ 目录,共四份。本页只回答三个问题:配置怎么分文件、环境变量怎么注入、某个配置该归谁管。具体配置块的含义与取值去对应的任务页查,不在这里复述。

文件激活方式内容
application.yml始终加载通用配置,不含端口与凭据
application-dev.yml默认 profile(PROFILES_ACTIVE 缺省为 dev)本地开发,端口 8000,凭据带示例默认值
application-prod.ymlPROFILES_ACTIVE=prod生产环境,端口 18000,凭据无默认值
application-generator.ymlspring.profiles.include: generator 固定引入代码生成器排除表与类型映射

dev 与 prod 的差异

维度devprod
端口800018000
凭据带示例默认值(如 DB_PWD:123456)无默认值,缺失即启动失败
SQL 监控数据源经 P6Spy 代理(jdbc:p6spy:mysql://)直连驱动 com.mysql.cj.jdbc.Driver
跨域allowed-origins: '*'白名单化,仅 ${application.url}
访问日志continew-starter.log.access-log.enabled: truefalse
任务调度snail-job.enabled: false,不依赖调度中心true,需部署调度中心

dev 预置了字段加密的示例 RSA 密钥对与 AES 密钥,仅供本地联调。prod 这些值全部改为环境变量注入,且不得与 dev 共用同一密钥对。

环境变量注入

配置文件中所有 ${VAR} 形式的值都来自环境变量。非凭据类变量在 dev 中带默认值,可以不改;凭据类变量在 prod 中强制注入,缺失即启动失败,这是有意设计,让配置问题在启动期暴露而不是运行到一半才炸。

本地用 IDEA 启动时,在运行配置的 Environment variables 里追加;Docker 部署通过 compose 的 environment 段注入,见部署。完整的变量清单(用途、dev 默认值、prod 是否必填)见环境变量参考。

变量名统一大写下划线风格,与配置里的 ${...} 占位一一对应。新增凭据时沿用同一模式:prod 中不给默认值。

新增环境 profile

需要测试环境这类新 profile 时,复制 application-dev.yml 为 application-test.yml,改端口与连接信息,然后以 PROFILES_ACTIVE=test 启动。多 profile 可逗号分隔组合激活(generator 已由 include 固定引入,无需重复写)。

配置项归属原则

项目里的配置键分属两个层面,写新功能时按下表决定配置放哪里:

  • 框架级配置键(continew-starter.*、sa-token.*、mybatis-plus.* 等)由 ContiNew Starter 定义,全部可选项与默认值见配置项参考。Admin 文档只说明 Admin 给这些键填的值,不重复定义。
  • 应用级配置键(application.*、avatar.*、captcha.*、generator.* 等)由 Admin 自身定义,直接在对应 application-*.yml 中维护。
  • 页面上维护的运行时配置(网站、安全、登录、邮件、短信、存储、客户端)优先用「系统管理 → 系统配置」页面管理,不写进配置文件。配置文件里的 spring.mail 与 sms 块与页面配置二选一,实际开发时注释或删除另一方,避免两处漂移。见系统配置。

哪里查具体配置

你要改什么看哪一页
本地数据库、Redis、端口快速开始
生产凭据、跨域、反向代理、调度中心部署
网站、密码策略、邮件、登录开关系统配置
双令牌 Cookie 与代理限流认证与安全
租户隔离与忽略表多租户接入
第三方登录平台凭据JustAuth

相关源码

目录