GitHub地址:https://github.com/anjia0532/unidbg-boot-server
相当于之前讲过的Application
seanBasePackage 设置一个包名
上面的是一些配置文件
直接运行去看看效果。
但是这里面没有unidbg的代码,可以看到配置文件当中添加了许多的依赖,那就是把这些都添加到了依赖中。
启动成功如上图
访问演示访问地址,就可以得到结果。
首先他启动的时候会扫描我们controller
这里添加了API地址,后面是是他的格式,JSON格式
这里定义了一个Worker
下方定义了一个真正的接口
得到一个key 和 body
传入到ttEncrypt中,最后再返回值。
那么他用的Serveric 所以我们去看看这个Service的文件夹。
先看到worker ,这个是和Contraller所对应
我们现在去看下他的构造方法。
第一个传进来一个unidbgProperties
鼠标左键点过去看一下,会发现这是一个配置类。
会发现他读了一个application的一个资源文件,
而且他会有两个配置文件,一个dev和application
默认开启的是dev
也就是说他读的是这个
所以把他的几个值,读到这个Java变量的代码中
`
`
public TTEncryptServiceWorker(UnidbgProperties unidbgProperties, //线程池大小
@Value("${spring.task.execution.pool.core-size:4}") int poolSize) {
this.unidbgProperties = unidbgProperties;
//判断是否是一个异步的
if (this.unidbgProperties.isAsync()) {
pool = WorkerPoolFactory.create(() ->
//初始化了一个构造函数
new TTEncryptServiceWorker(unidbgProperties.isDynarmic(), unidbgProperties.isVerbose()),
//创建一个最小线程池为4的
Math.max(poolSize, 4));
log.info("线程池为:{}", Math.max(poolSize, 4));
} else {
//否则就会直接调用这个构造方法
this.ttEncryptService = new TTEncryptService(unidbgProperties);
}
我们发现例子,根本没有打印这句话
所以执行的就是
this.ttEncryptService = new TTEncryptService(unidbgProperties);
那么我们跟过去看会发现这就是一个
unidbg的初始化函数
那么这个TTEncryptService 是不是就相当于我们在unidbg所作的事情
那么我们直接在Service 文件夹下面编写我们所需要的例子。把之前的ManActive直接复制到这个文件夹下面即可
为了方便调用这个service服务,我们可以模仿他来一个worker。