Tôi đã phát triển một ứng dụng web bằng cách sử dụng servlet và JSP. Tôi không sử dụng bất kỳ khung công tác nào, thay vì sử dụng khuôn khổ MVC đã được sản xuất tại nhà riêng của tôi. Tôi đang sử dụng MySQL như một phụ trợ.chạy nhiệm vụ định kỳ ở phía máy chủ cho trang web servlet JSP MVC
Tôi muốn làm như sau:
- Dọn dẹp một số dữ liệu từ cơ sở dữ liệu mỗi giờ
- Tạo và lưu trữ số liệu về dữ liệu mỗi 15 phút trong một tập tin XML đâu đó
Vấn đề là: hiện tại tất cả các mã của tôi chạy là kết quả của yêu cầu nhận được từ một khách hàng.
Làm cách nào để chạy tác vụ định kỳ ở phía máy chủ?
Một giải pháp mà tôi có ngay bây giờ là tạo một chuỗi trong hàm init của bộ điều khiển. Có sự lựa chọn nào khác không?
Chỉ muốn thêm vào câu trả lời tuyệt vời BalusC rằng '' scheduleAtFixedRate' và 'phương pháp scheduleWithFixedDelay' ScheduledExecutorService' sẽ ngăn chặn hành trong tương lai nếu ngoại lệ được bắt gặp trong một hoạt động. Vì vậy, hãy nhớ xử lý ngoại lệ của bạn. 'Nếu bất kỳ việc thực hiện nhiệm vụ nào gặp phải một ngoại lệ, các lệnh xử lý tiếp theo sẽ bị chặn. ' – dvd