application.yaml 6.4 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
spring:
  main:
    allow-circular-references: true # 允许循环依赖,因为项目是三层架构,无法避免这个情况。

  # Servlet 配置
  servlet:
    # 文件上传相关配置项
    multipart:
      max-file-size: 16MB # 单个文件大小
      max-request-size: 32MB # 设置总上传的文件大小
  mvc:
    pathmatch:
      matching-strategy: ANT_PATH_MATCHER # 解决 SpringFox 与 SpringBoot 2.6.x 不兼容的问题,参见 SpringFoxHandlerProviderBeanPostProcessor 类

  # Jackson 配置项
  jackson:
    serialization:
      write-dates-as-timestamps: true # 设置 Date 的格式,使用时间戳
      write-date-timestamps-as-nanoseconds: false # 设置不使用 nanoseconds 的格式。例如说 1611460870.401,而是直接 1611460870401
      write-durations-as-timestamps: true # 设置 Duration 的格式,使用时间戳
      fail-on-empty-beans: false # 允许序列化无属性的 Bean

  # Cache 配置项
  cache:
    type: REDIS
    redis:
      time-to-live: 1h # 设置过期时间为 1 小时

  # 工作流 Activiti 配置
  activiti:
    # 1. false: 默认值,activiti启动时,对比数据库表中保存的版本,如果不匹配。将抛出异常
    # 2. true: 启动时会对数据库中所有表进行更新操作,如果表存在,不做处理,反之,自动创建表
    # 3. create_drop: 启动时自动创建表,关闭时自动删除表
    # 4. drop_create: 启动时,删除旧表,再创建新表
    database-schema-update: true # 设置为 false,可通过 sql/activiti.sql 初始化
    db-history-used: true # activiti7 默认 false 不生成历史信息表,需手动设置开启
    check-process-definitions: false # 设置为 false,禁用 /resources/processes 自动部署 BPMN XML 流程
    history-level: full # full:保存历史数据的最高级别,可保存全部流程相关细节,包括流程流转各节点参数

# 工作流 Flowable 配置
flowable:
  # 1. false: 默认值,Flowable 启动时,对比数据库表中保存的版本,如果不匹配。将抛出异常
  # 2. true: 启动时会对数据库中所有表进行更新操作,如果表存在,不做处理,反之,自动创建表
  # 3. create_drop: 启动时自动创建表,关闭时自动删除表
  # 4. drop_create: 启动时,删除旧表,再创建新表
  database-schema-update: true # 设置为 false,可通过 https://github.com/flowable/flowable-sql 初始化
  db-history-used: true # flowable6 默认 true 生成信息表,无需手动设置
  check-process-definitions: false # 设置为 false,禁用 /resources/processes 自动部署 BPMN XML 流程
  history-level: full # full:保存历史数据的最高级别,可保存全部流程相关细节,包括流程流转各节点参数

# MyBatis Plus 的配置项
mybatis-plus:
  configuration:
    map-underscore-to-camel-case: true # 虽然默认为 true ,但是还是显示去指定下。
  global-config:
    db-config:
      id-type: NONE # “智能”模式,基于 IdTypeEnvironmentPostProcessor + 数据源的类型,自动适配成 AUTO、INPUT 模式。
#      id-type: AUTO # 自增 ID,适合 MySQL 等直接自增的数据库
#      id-type: INPUT # 用户输入 ID,适合 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库
#      id-type: ASSIGN_ID # 分配 ID,默认使用雪花算法。注意,Oracle、PostgreSQL、Kingbase、DB2、H2 数据库时,需要去除实体类上的 @KeySequence 注解
      logic-delete-value: 1 # 逻辑已删除值(默认为 1)
      logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
  type-aliases-package: ${yudao.info.base-package}.dal.dataobject

--- #################### RPC 远程调用相关配置 ####################
dubbo:
  scan:
    base-packages: ${yudao.info.base-package}.api # 指定 Dubbo 服务实现类的扫描基准包
  protocol:
    name: dubbo # 协议名称
    port: -1 # 协议端口,-1 表示自增端口,从 20880 开始
  registry:
    address: spring-cloud://localhost # 设置使用 Spring Cloud 注册中心
74 75
  application:
    id: infra-server # TODO 一定要写么?
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148

--- #################### 芋道相关配置 ####################

yudao:
  info:
    version: 1.0.0
    base-package: cn.iocoder.yudao.module.infra
  web:
    admin-api:
      prefix: /admin-api
      controller: '**.controller.admin.**'
    app-api:
      prefix: /app-api
      controller: '**.controller.app.**'
    admin-ui:
      url: http://dashboard.yudao.iocoder.cn # Admin 管理后台 UI 的地址
  swagger:
    title: 管理后台
    description: 提供管理员管理的所有功能
    version: ${yudao.info.version}
    base-package: ${yudao.info.base-package}
  captcha:
    timeout: 5m
    width: 160
    height: 60
  codegen:
    base-package: ${yudao.info.base-package}
    db-schemas: ${spring.datasource.dynamic.datasource.master.name}
  error-code: # 错误码相关配置项
    constants-class-list:
      - cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants
      - cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants
      - cn.iocoder.yudao.module.member.enums.ErrorCodeConstants
      - cn.iocoder.yudao.module.pay.enums.ErrorCodeConstants
      - cn.iocoder.yudao.module.system.enums.ErrorCodeConstants
  tenant: # 多租户相关配置项
    enable: true
    ignore-urls:
      - /admin-api/system/tenant/get-id-by-name # 基于名字获取租户,不许带租户编号
      - /admin-api/system/captcha/get-image # 获取图片验证码,和租户无关
      - /admin-api/infra/file/*/get/** # 获取图片,和租户无关
      - /admin-api/system/sms/callback/* # 短信回调接口,无法带上租户编号
    ignore-tables:
      - system_tenant
      - system_tenant_package
      - system_dict_data
      - system_dict_type
      - system_error_code
      - system_menu
      - system_sms_channel
      - system_sms_template
      - system_sms_log
      - system_sensitive_word
      - system_oauth2_client
      - infra_codegen_column
      - infra_codegen_table
      - infra_test_demo
      - infra_config
      - infra_file_config
      - infra_file
      - infra_file_content
      - infra_job
      - infra_job_log
      - infra_job_log
      - infra_data_source_config
  sms-code: # 短信验证码相关的配置项
    expire-times: 10m
    send-frequency: 1m
    send-maximum-quantity-per-day: 10
    begin-code: 9999 # 这里配置 9999 的原因是,测试方便。
    end-code: 9999 # 这里配置 9999 的原因是,测试方便。

debug: false