Я пишу планировщик в своем веб-приложении для целей уведомления, задача моего планировщика проста: он попадет в стороннюю централизованную базу данных и будет искать доступность данных, если данные доступны, то он возвращает true, в противном случае - false.
Но я застрял здесь, я хочу показать уведомление на основе результата (true / false), возвращаемого моим планировщиком, но я не могу думать, как мне реализовать то же самое? Я думал о связывании переменной в сеансе, но поскольку это время, сеанс здесь невозможен.
Предположим, что планировщик возвращает true, теперь я хочу, чтобы это значение находилось на моей странице JSP (странице Dashboard), где я могу показать сообщение «Данные доступны» на панели пользователя. Мне нужно это значение для проверки условия
if(true)
"data is available"
else
no notification
Пожалуйста, посмотрите мой код и предложите мне.
package com.awzpact.uam.scheduler;
import com.awzpact.prayas.dao.HRMSPickSalaryDataDAO;
import com.awzpact.uam.domain.SalaryDetailReport;
import java.util.List;
import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class PayrollDataNotificationScheduler {
private static boolean AVAIL_STATUS = false;
private static final Logger LOGGER = Logger.getLogger(PayrollDataNotificationScheduler.class);
public boolean checkDataAvailability() {
try {
List<SalaryDetailReport> list = salaryDataDAO.findAll();
if (list.size() > 0) {
AVAIL_STATUS = true;
return AVAIL_STATUS;
}
return false;
} catch (Exception e) {
e.printStackTrace();
LOGGER.info("Data is not available for migrate");
return false;
}
}
@Autowired
HRMSPickSalaryDataDAO salaryDataDAO;
}