首先找testConnection接口,前面进行了jimureport-spring-boot-starter-1.5.8.jar反编译查找,接口找到发现请求参数是json
var1是JmreportDynamicDataSourceVo类型,也就是如上图的dbSource,根据打印的结果可以知道这里是local cache key
ConcurrentHashMap属于并发程序,var4也就是连接相关的东西
那么这一块就是数据库连接的东西,主要说的是配置文件
因为jeecg-boot/jmreport/testConnection接口的参数是var1,是JmreportDynamicDataSourceVo类型,那么我们查看代码总结出来有这么几个参数id,code,dbType,dbDriver,dbUrl,dbName,dbUsername,dbPassword,connectTimes
那么继续往下走
可以看到从var1(也就是JmreportDynamicDataSourceVo)中获得DbDriver,然后获得DbUrl,一起通过g方法传给了var39,来看看g方法
这段代码的目的是用于处理包含数据库连接参数的字符串,如果字符串中包含 “mysql”,则将 “allowLoadLocalInfile” 参数设置为 “false”。这是为了增强安全性,因为允许加载本地文件可能存在一些潜在的安全风险
var2 = DriverManager.getConnection(var39, var1.getDbUsername(), var1