API 参考

数据持久化配置

数据持久化模块配置说明。

数据持久化配置

配置前缀: nebula.data.persistence

基础配置

nebula:
  data:
    persistence:
      enabled: true          # 是否启用数据持久化(必须设为true才能生效)
      primary: primary       # 主数据源名称
      sources:               # 数据源列表
        primary:             # 数据源名称(与primary对应)
          type: mysql        # 数据库类型: mysql, postgresql, oracle, sqlserver
          driver-class-name: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
          username: root
          password: password
          validation-query: SELECT 1
          pool:              # 连接池配置
            min-size: 5              # 最小连接数
            max-size: 20             # 最大连接数
            connection-timeout: 30s  # 连接超时时间
            idle-timeout: 10m        # 空闲连接超时
            max-lifetime: 30m        # 连接最大生命周期
            validation-timeout: 5s   # 验证超时时间

MyBatis-Plus 配置

nebula:
  data:
    persistence:
      mybatis-plus:
        mapper-locations: classpath*:/mapper/**/*.xml  # Mapper XML文件位置
        type-aliases-package: com.example.entity       # 实体类别名包
        map-underscore-to-camel-case: true            # 下划线转驼峰
        log-impl: slf4j                                # 日志实现: slf4j, stdout, no
        global-config:
          db-config:
            id-type: auto                   # 主键策略: auto, none, input, assign_id, assign_uuid
            logic-delete-field: deleted     # 逻辑删除字段
            logic-delete-value: 1           # 逻辑删除值
            logic-not-delete-value: 0       # 逻辑未删除值
            table-underline: true           # 表名使用下划线

多数据源配置

nebula:
  data:
    persistence:
      enabled: true
      primary: master
      sources:
        master:
          url: jdbc:mysql://master:3306/mydb
          username: root
          password: password
        slave:
          url: jdbc:mysql://slave:3306/mydb
          username: reader
          password: password