java-all-call-graph
java-all-call-graph copied to clipboard
请问下,缺少几个类文件,是在哪导入的呢
MySqlStatementEnum、EntryParseMyBatisMySqlTable、MyBatisMySqlInfo 这几个类都没看见,看着好像是mysql_table_parser 包下面,但是没看到有这个包,幸苦大佬帮忙看看,谢谢
这几个类在另外一个组件里,使用Maven时可以手工添加一下,参考https://repo1.maven.org/maven2/com/github/adrninistrator/java-all-call-graph/1.0.14/java-all-call-graph-1.0.14.pom
<dependency>
<groupId>com.github.adrninistrator</groupId>
<artifactId>mybatis-mysql-table-parser</artifactId>
<version>0.0.5</version>
<scope>compile</scope>
</dependency>
使用Gradle时应该能自动添加依赖
感谢大佬,问题解决了,不过我看有很多实体类的get、tostring这些方法的调用也被记录了,是否可以排除呢,还有就是现在是按app_name 加在了数据库表名后面,如果有多个应用需要分析就会新建很多表,是否可以在表里面增加app_name字段来区分,避免新增太多的表呢
现在处理时满足条件的类的方法都会解析再写到数据库里,如果在生成调用链时需要忽略这些方法,可以在配置文件ignore_method_prefix.properties里指定方法名前缀
如果在表的字段加app_name来区分的话,可能不会特别方便,比如表结构有变更需要drop掉,或者是需要清理表数据时,按表清理比按表加字段条件清理要更简单一些,如果多个应用的话可以考虑创建多个库,如果放在同一个库里应该也不会太麻烦,批量操作时可以根据表名后缀查表表名后再处理