{{wikiTitle}}
yml配置文件说明
目录:
yml配置文件说明
yml配置文件说明
文件位置
如图所示:
application.yml—基础(本地)环境配置文件
application-beta.yml—开发环境配置文件
application-dev.yml—测试环境配置文件
application-prod.yml—正式环境配置文件
后三个环境配置文件的作用,是在不同的环境中,对应的yml中的值会对基础配置文件的值进行替换
所以我们这里只对application.yml进行说明
# CRMEB 相关配置
crmeb:
version: CRMEB-JAVA-SY-v2.2 # 当前代码版本
domain: #配合swagger使用 # 待部署域名
wechat-api-url: #请求微信接口中专服务器
wechat-js-api-debug: false #微信js api系列是否开启调试模式
wechat-js-api-beta: true #微信js api是否是beta版本
asyncConfig: true #是否同步config表数据到redis
asyncWeChatProgramTempList: false #是否同步小程序公共模板库
imagePath: /crmebimage这个文件绝对路径的上一级/ # 服务器图片路径配置 斜杠结尾
demoSite: true # 是否演示站点 所有手机号码都会掩码
activityStyleCachedTime: 10 #活动边框缓存周期 秒为单位,生产环境适当5-10分钟即可
ignored: #安全路径白名单
- swagger-ui/
- swagger-resources/**
- /**/v2/api-docs
- /**/*.html
- /**/*.js
- /**/*.css
- /**/*.png
- /**/*.map
- /favicon.ico
- /actuator/**
- /druid/**
- api/admin/pagediy/info
- api/public/**
# 配置端口
server:
port: 8080
servlet:
context-path: / # 访问path
tomcat:
uri-encoding: UTF-8 # 默认编码格式
max-threads: 1000 # 最大线程数量 默认200
min-spare-threads: 30 # 初始化启动线程数量
spring:
profiles:
# 配置的环境
# active: #spring.profiles.active#
active:
servlet:
multipart:
max-file-size: 50MB #设置单个文件大小
max-request-size: 50MB #设置单次请求文件的总大小
application:
name: cemrb-admin #这个很重要,这在以后的服务与服务之间相互调用一般都是根据这个name
jackson:
locale: zh_CN
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
# 数据库配置
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test_crmeb_java?characterEncoding=utf-8&useSSL=false&serverTimeZone=GMT+8
username:
password:
# quartz
quartz:
properties:
org:
quartz:
scheduler:
instanceName: quartzScheduler
# instanceName: clusteredScheduler
instanceId: AUTO
jobStore:
class: org.quartz.impl.jdbcjobstore.JobStoreTX
driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
tablePrefix: QRTZ_
isClustered: false
clusterCheckinInterval: 10000
useProperties: false
# dataSource: crmeb_java_beta
threadPool:
class: org.quartz.simpl.SimpleThreadPool
threadCount: 10
threadPriority: 5
threadsInheritContextClassLoaderOfInitializingThread: true
#数据库方式
job-store-type: JDBC
redis:
host: 127.0.0.1 #地址
port: 6379 #端口
password: 123456
timeout: 30000 # 连接超时时间(毫秒)
database: 1 #默认数据库
jedis:
pool:
max-active: 200 # 连接池最大连接数(使用负值表示没有限制)
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
max-idle: 10 # 连接池中的最大空闲连接
min-idle: 0 # 连接池中的最小空闲连接
time-between-eviction-runs: -1 #逐出扫描的时间间隔(毫秒) 如果为负数,则不运行逐出线程, 默认-1
second:
database: 14 # 微信accessToken存储库
debug: true
logging:
level:
io.swagger.*: error
com.zbjk.crmeb: debug
org.springframework.boot.autoconfigure: ERROR
config: classpath:logback-spring.xml
file:
path: ./crmeb_log
# mybatis 配置
mybatis-plus:
mapper-locations: classpath*:mapper/*/*Mapper.xml #xml扫描,多个目录用逗号或者分号分隔(告诉 Mapper 所对应的 XML 文件位置)
typeAliasesPackage: com.zbkj.**.model
# 配置slq打印日志
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
db-config:
# logic-delete-field: isDel #全局逻辑删除字段值 3.3.0开始支持,详情看下面。
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
#swagger 配置
swagger:
basic:
enable: true #是否开启
check: false #是否打开验证
username: #访问swagger的账号
password: #访问swagger的密码
# 行为验证码
aj:
captcha:
type: default # 验证码类型
water-mark: CRMEB Java # 水印
slip-offset: 5 # 校验滑动拼图允许误差偏移量(默认5像素)
aes-status: true # aes加密坐标开启或者禁用(true|false)
interference-options: 2 # 滑动干扰项(0/1/2)
font-style: 1 # 点选字体样式 默认Font.BOLD
font-size: 25 # 点选字体字体大小
req-frequency-limit-enable: false # 接口请求次数一分钟限制是否开启 true|false
req-get-lock-limit: 5 # 验证失败5次,get接口锁定
req-get-lock-seconds: 360 # 验证失败后,锁定时间间隔,s
req-get-minute-limit: 30 # get接口一分钟内请求数限制
req-check-minute-limit: 60 # check接口一分钟内请求数限制
req-verify-minute-limit: 60 # verify接口一分钟内请求数限制
# 滑动验证,底图路径,不配置将使用默认图片
# 支持全路径
# 支持项目路径,以classpath:开头,取resource目录下路径,例:classpath:images/jigsaw
jigsaw: classpath:images/jigsaw
#滑动验证,底图路径,不配置将使用默认图片
##支持全路径
# 支持项目路径,以classpath:开头,取resource目录下路径,例:classpath:images/pic-click
pic-click: classpath:images/pic-click
# 对于分布式部署的应用,我们建议应用自己实现CaptchaCacheService,比如用Redis或者memcache,
# 参考CaptchaCacheServiceRedisImpl.java
# 如果应用是单点的,也没有使用redis,那默认使用内存。
# 内存缓存只适合单节点部署的应用,否则验证码生产与验证在节点之间信息不同步,导致失败。
# !!! 注意啦,如果应用有使用spring-boot-starter-data-redis,
# 请打开CaptchaCacheServiceRedisImpl.java注释。
# redis -----> SPI: 在resources目录新建META-INF.services文件夹(两层),参考当前服务resources。
# 缓存local/redis...
cache-type: redis
# local缓存的阈值,达到这个值,清除缓存
cache-number: 1000
# local定时清除过期缓存(单位秒),设置为0代表不执行
timing-clear: 3600
history-data-clear-enable: false
在这里只说明CRMEB 相关配置的使用
在crmeb-common项目下的config文件夹下有CrmebConfig文件,就是这个文件在项目启动时,加载所有yml中CRMEB 相关配置的值,并在其他需要的地方进行使用,在二开时,如果需要增加对应的私有配置,需要同样在CrmebConfig中添加对应属性和get/set方法,方便在项目中使用
@Configuration
@ConfigurationProperties(prefix = "crmeb")
public class CrmebConfig {
// 当前代码版本
private String version;
// 待部署域名
private String domain;
// #请求微信接口中专服务器
private String wechatApiUrl;
// #微信js api系列是否开启调试模式
private boolean wechatJsApiDebug;
// #微信js api是否是beta版本
private boolean wechatJsApiBeta;
// #是否同步config表数据到redis
private boolean asyncConfig;
// #是否同步小程序公共模板库
private boolean asyncWeChatProgramTempList;
// 本地图片路径配置
private String imagePath;
// 是否演示站点 所有手机号码都会掩码
private Boolean demoSite;
// 活动边框缓存周期
private Integer activityStyleCachedTime;
// 活动边框参加 指定商品参加上限
private Integer selectProductLimit;
// 不过滤任何数据的url配置
private List<String> ignored;
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
public String getDomain() {
return domain;
}
public void setDomain(String domain) {
this.domain = domain;
}
public String getWechatApiUrl() {
return wechatApiUrl;
}
public void setWechatApiUrl(String wechatApiUrl) {
this.wechatApiUrl = wechatApiUrl;
}
public boolean isWechatJsApiDebug() {
return wechatJsApiDebug;
}
public void setWechatJsApiDebug(boolean wechatJsApiDebug) {
this.wechatJsApiDebug = wechatJsApiDebug;
}
public boolean isWechatJsApiBeta() {
return wechatJsApiBeta;
}
public void setWechatJsApiBeta(boolean wechatJsApiBeta) {
this.wechatJsApiBeta = wechatJsApiBeta;
}
public boolean isAsyncConfig() {
return asyncConfig;
}
public void setAsyncConfig(boolean asyncConfig) {
this.asyncConfig = asyncConfig;
}
public boolean isAsyncWeChatProgramTempList() {
return asyncWeChatProgramTempList;
}
public void setAsyncWeChatProgramTempList(boolean asyncWeChatProgramTempList) {
this.asyncWeChatProgramTempList = asyncWeChatProgramTempList;
}
public String getImagePath() {
return imagePath;
}
public void setImagePath(String imagePath) {
this.imagePath = imagePath;
}
public Boolean getDemoSite() {
return demoSite;
}
public void setDemoSite(Boolean demoSite) {
this.demoSite = demoSite;
}
public List<String> getIgnored() {
return ignored;
}
public void setIgnored(List<String> ignored) {
this.ignored = ignored;
}
public Integer getActivityStyleCachedTime() {
return activityStyleCachedTime;
}
public void setActivityStyleCachedTime(Integer activityStyleCachedTime) {
this.activityStyleCachedTime = activityStyleCachedTime;
}
public Integer getSelectProductLimit() {
return selectProductLimit;
}
public void setSelectProductLimit(Integer selectProductLimit) {
this.selectProductLimit = selectProductLimit;
}
@Override
public String toString() {
return "CrmebConfig{" +
"version='" + version + '\'' +
", domain='" + domain + '\'' +
", wechatApiUrl='" + wechatApiUrl + '\'' +
", asyncConfig=" + asyncConfig +
", imagePath='" + imagePath + '\'' +
", activityStyleCachedTime=" + activityStyleCachedTime +
", selectProductLimit=" + selectProductLimit +
", ignored=" + ignored +
'}';
}
}




评论({{cateWiki.comment_num}})
{{commentWhere.order ? '评论从旧到新':'评论从新到旧'}}
{{cateWiki.page_view_num}}人看过该文档


评论(0)
{{commentWhere.order ? '评论从旧到新':'评论从新到旧'}}
916人看过该文档




{{item.user ? item.user.nickname : ''}} (自评)
{{item.content}}
{{item.create_time}} 删除




搜索结果
为您找到{{wikiCount}}条结果
{{item.page_view_num}}
{{item.like ? item.like.like_num : 0}}
{{item.comment ? item.comment.comment_num : 0}}
位置:{{path.name}} {{(i+1) == item.catalogue.path_data.length ? '':'/'}}


