Raver | f79fdb6 | 2025-06-03 06:02:49 +0000 | [diff] [blame] | 1 | package api; |
| 2 | |
| 3 | import org.springframework.boot.SpringApplication; |
| 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; |
rhj | 6b9e3af | 2025-06-09 22:00:38 +0800 | [diff] [blame] | 5 | import scheduler.SchedulerService; |
root | 59a69f8 | 2025-06-05 08:35:22 +0000 | [diff] [blame] | 6 | import tracker.DataCaptureServer; |
| 7 | import java.io.IOException; |
Raver | f79fdb6 | 2025-06-03 06:02:49 +0000 | [diff] [blame] | 8 | |
| 9 | @SpringBootApplication |
| 10 | public class ApiApplication { |
rhj | 6b9e3af | 2025-06-09 22:00:38 +0800 | [diff] [blame] | 11 | private static SchedulerService schedulerService; |
root | 59a69f8 | 2025-06-05 08:35:22 +0000 | [diff] [blame] | 12 | |
rhj | 6b9e3af | 2025-06-09 22:00:38 +0800 | [diff] [blame] | 13 | public static void main(String[] args) { |
root | 59a69f8 | 2025-06-05 08:35:22 +0000 | [diff] [blame] | 14 | try{ |
| 15 | DataCaptureServer.start(); |
| 16 | }catch(IOException e){ |
| 17 | System.out.println(e); |
| 18 | } |
rhj | 6b9e3af | 2025-06-09 22:00:38 +0800 | [diff] [blame] | 19 | |
| 20 | // 启动定时任务服务 |
| 21 | schedulerService = new SchedulerService(); |
| 22 | schedulerService.start(); |
| 23 | |
| 24 | // 添加关闭钩子,确保应用关闭时停止定时任务 |
| 25 | Runtime.getRuntime().addShutdownHook(new Thread(() -> { |
| 26 | if (schedulerService != null) { |
| 27 | schedulerService.stop(); |
| 28 | } |
| 29 | })); |
| 30 | |
Raver | f79fdb6 | 2025-06-03 06:02:49 +0000 | [diff] [blame] | 31 | SpringApplication.run(ApiApplication.class, args); |
| 32 | } |
Raver | f79fdb6 | 2025-06-03 06:02:49 +0000 | [diff] [blame] | 33 | } |