我有一个多线程Spring boot application
的应用程序。业务用例是,它从mysql读取数据并执行各种任务。
从数据库读取的整个逻辑是在try块中写的,它位于无限循环内。
consumeDatabaseData()
的{{1}}是从主Spring引导类的run方法调用的,如下所示。
我有这种循环运行,它从DatabaseService.java
读取数据并执行任务。
问题在于,给定的while循环看起来陈旧,即我的mysql表中有数据,但它看起来它不是从mysql中读取的,因为我没有在while循环中接收控制台中的任何日志。
但我的sservice正在运行,因为我正在接收从mysql读取数据的控制台中的日志。
我在下面发布我的代码,可能是可能的原因。
MainClass.java
mysql
DatabaseService.java :
public class MainClass implements CommandLineRunner {
@Autowired
DatabaseService databaseService;
public static void main(String...args) {
SpringApplication.run(MainClass.class, args);
}
@Override
public void run(String... args) throws Exception {
databaseService.consumeDatabaseData();
}
}