# 文件配置
文件配置使用properties格式文件,以上一章节中讲到的`配置名`作为**键(key)**,以配置的值作为**值(value)**
> 以核心`1.12.x`的配置规范为准,较早版本中需要省略到开头的`simbot.`
# 常用配置
一般在使用`CQ HTTP API`中,最常用的配置如有:
```properties
# core.bots,核心提供的配置项,代表要注册的bot列表。详细介绍见核心的配置说明。
simbot.core.bots=:http://127.0.0.1:5700
# Java监听端口, 默认为15514,需要最终拼接为url并填入插件配置中的"post_url"参数中。
simbot.cqhttp.javaPort=8877
# 监听请求地址,默认为一个斜杠"/"
simbot.bmcqhttp.serverPath=/coolq
```
# 详细配置
首先,关于在`核心`中所提供的配置映射请直接查阅 [核心通用文件配置](./文件配置.md)
此处将列举`CQ HTTP API组件`中所有提供的配置参数:
> 以核心`1.12.x`的配置规范为准,较早版本中需要省略到开头的`simbot.`
```properties
# Java监听端口, 默认为15514,需要最终拼接为url并填入插件配置中的"post_url"参数中。
simbot.cqhttp.javaPort=
# TCP连接最大并发数, 传 0 或负数表示使用默认值,默认为0
simbot.cqhttp.backLog=
# 监听请求地址,默认为一个斜杠"/"
simbot.cqhttp.serverPath=
# 接收的请求方式,默认为 post。可有多个,多个使用逗号分隔。插件目前也仅支持post类型,所以一般不需要更改。
simbot.cqhttp.method=
######## v1.12.0-1.12 后更新 #########
# cqhttp 的access_token验证
simbot.cqhttp.accessToken=
# cqhttp 的secret密钥
simbot.cqhttp.secret=
```
>[warning] 如果CQ HTTP API组件的版本低于`0.7.0-BETA-1.7.0`, 则上述中的`配置名`中,所有的`cqhttp` 应当替换为 `simple.robot.conf.coolqhttpapi`
# 如何使用(核心1.8.x以下)
首先,修改启动器接口。
如果是普通的`CoolQHttpApp`,则修改为`CoolQHttpResourceApp`
>[info] `CoolQHttpApp -> CoolQHttpResourceApp`
如果是无服务的`CoolQNoServerApp`,则修改`CoolQNoServerResourceApp`
>[info] `CoolQNoServerApp -> CoolQNoServerResourceApp`
然后,修改被实现的方法。
在`xxxxxxxResourceApp`接口,即文件配置启动接口中,存在三个**必须**需要被重写的方法:
```java
/** 配置文件resource路径 */
String resourceName();
/** 配置文件读取后,启动前*/
void before(Properties args, CoolQHttpConfiguration configuration);
/**启动后 */
void after(CQCodeUtil cqCodeUtil, MsgSender sender);
```
上述三个方法中,`after`方法与其他App启动接口一致,不再阐述。
首先说说`resourceName`方法。使用此方法返回一个项目`resources`资源目录下的配置文件路径,启动的时候启动器便会自动获取此配置文件并进行配置。
<br>
其次说说`before`方法。此方法相比较于非配置文件启动接口来讲,多了一个`Properties`类型的参数。此参数即为你实际Properties配置文件的值。然后第二个参数便是通过读取Properties配置文件而得到的配置类。此时你可以选择不任何操作,或者可以选择通过代码在进行进一步的配置。
>[warning] 注①:使用了`xxxxxxxResourcesApp`配置文件启动接口的时候,请务必**不要**重写`before(CoolQHttpConfiguration)` 方法,而只重写新的`before(Properties, CoolQHttpConfiguration)方法,否则会导致配置类无法正常注入参数。`
除了上述所提到的三个**必须**重写的方法以外,配置文件启动接口还提供了几个**可选**的配置方法。下述可选配置中,在非需要的情况下请不要重写。
```java
/**
* 获取配置文件的文件输入流对象,并根据此对象对配置对象进行自动装填。
* 获取到的流在使用完成后会自动关闭。
* @return 配置文件流对象(properties
*/
InputStream getStream();
```
假如你的配置文件不在`resources`路径下,那么你可以选择自己指定配置文件的`InputStream`的对象获取方法。
>[warning] 注②:当重写了`getStream()`时,`resourceName()`方法即不再生效。
# 如何使用(核心1.8.x及以上)
写完配置文件后,在你的任意启动类上标注一个注解:`@SimpleRobotApplication(resources = "/conf.properties")`,其中,`resources`参数即代表你的配置文件在resouces路径下的相对路径哦。
就像这样:
```java
@SimpleRobotApplication(resources = "/conf.properties")
public class RunApp { //... }
```
此时,这个启动类可以不实现任何接口。
然后通过class作为参数进行启动:
```java
new CoolQHttpApplication().run(RunApp.class, args);
```
# 如何使用(核心1.9.x及以上)
>[success] 在`1.8.x`的基础上
当然,如果你想要即继承接口来实现代码配置,又可以通过注解来读取配置文件,你可以将`run`方法更替为`runWithAnnotation`方法,例如:
```java
@SimpleRobotApplication(resources = "/conf.properties")
public class RunApp implements CoolQApp {
// implement interface and do something...
}
```
然后:
```java
new CoolQHttpApplication().runWithAnnotation(new RunApp(), args);
```
- 前言
- 简单介绍
- 我该如何阅读文档
- 视频教程
- 安装与使用
- 开源协议
- 免责&捐助
- 注意事项
- 版本命名规则简介
- 主要功能版本历史
- 功能指引
- 通用API与功能
- 国际化语言
- 异常
- 消息监听
- @Listen
- @OnListen模板
- @Filter
- 消息参数截取
- @Spare
- @Constr
- @Ignore
- @ListenBreak
- @ListenBreakPlugin
- @ListenBody
- 监听响应
- 成功判定与返回值
- 监听上下文
- 动态参数
- 监听消息API
- 异步监听 @Async
- 限流监听 @Limit
- 自定义Http送信器
- 枚举与类型
- 送信器
- SENDER
- SETTER
- GETTER
- 返回值
- 其他位置
- 日志与日志拦截
- 异常处理
- 依赖注入
- 自定义依赖获取
- 批量依赖载入
- 注意事项
- 常量
- 定时任务
- 自定义过滤
- 拦截器
- 拦截器总定义
- 上下文对象总定义
- 监听消息拦截
- 送信器拦截
- 监听函数拦截
- CAT码
- CQ码
- CQCode
- CQ码工具类
- CQ扩展工具类
- AppendList拼接链
- 高级内容
- 阻断机制
- 截断机制
- 自定义枚举类型
- 枚举工厂
- byName注解
- 自定义注解
- 配置
- 文件配置
- 注解配置
- 参数配置
- 多配置
- 多账号
- 自定义账号管理器
- 小心!
- 核心版本与组件如何升级核心
- 核心版本迭代指南
- 核心
- 更新日志
- jar包与依赖
- 监听消息类结构图
- 快速启动
- 模组与扩展
- 模组开发
- 现有模组
- 通用模组-延时任务
- 通用模组-CQ码工具
- 转义器
- CQ码操作工具类
- CQ码模板-CodeTemplate
- CQ码载体-KQCode
- CQ码构建器
- MQ码工具类
- 通用模组-redis-bot管理器
- 通用模组-Debugger
- Debugger-common模块
- Debugger-server模块
- Debugger-client模块
- 通用模组-钉钉机器人
- 组件-Mirai(JVM)
- 快速开始(1.13+)
- springboot-starter
- 注意事项
- 配置
- 额外的内容
- 快速回复
- 额外监听
- CQ码解析
- 组件-酷Q(QQ)-CQ HTTP API(基本失效)
- 快速开始(推荐)
- 快速开始(1.7.x以下,不推荐)
- 快速开始(Springboot启动器)
- 启动器、启动接口与配置类
- 配置
- 文件配置
- 注意事项
- 更新日志
- 额外的内容
- 自定义额外监听
- CQ送信器
- 元事件
- 监听消息类结构图
- 组件-酷Q(QQ)-JCQ(失效)
- 快速开始
- 更新日志
- 额外的内容
- JCQ日志
- 配置
- 注意事项
- 监听消息类结构图
- 组件-酷Q(QQ)-HTTP TO CQ(失效)
- 快速开始(核心1.7.x及以下)
- 启动器、启动接口与配置类
- 配置
- 文件配置
- 注意事项
- 更新日志
- 监听消息类结构图
- 组件-酷Q(QQ)-LEMOC (失效)
- 快速开始(核心1.7.x及以下)
- 配置
- 注意事项
- 更新日志
- 监听消息类结构图
- Springboot快速启动器
- 常见问题汇总
- BUG反馈
- 更新计划总览