下面是我的春季启动代码段,每隔几分钟将json数据发布到服务器url,以告诉我我还活着并正在运行(它将json输入数据加载到db)。此发布请求的目的是更新应用程序监视工具上的状态。
在我的Spring Boot应用程序中实现此行为的正确方法是什么?他们的装饰器api是否对URL进行这样的发布请求,在整个应用程序中每隔几分钟就执行一次?我怎样才能知道成功发出请求的时间来进行下一次请求?请帮我。预先感谢。
RestTemplate restTemplate = new RestTemplate();
String url = "endpoint url";
String requestJson = "{\"I am alive\":\"App name?\"}";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<String>(requestJson,headers);
String answer = restTemplate.postForObject(url, entity, String.class);
System.out.println(answer);
答案 0 :(得分:0)
您为什么不使用@Scheduled
annotation?每3分钟就会发出一次ute请求。
@Component
public class Heartbeater {
@Scheduled(fixedDelay = 180000)
public void heartbeat() {
// Your code is below...
RestTemplate restTemplate = new RestTemplate();
String url = "endpoint url";
String requestJson = "{\"I am alive\":\"App name?\"}";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<String>(requestJson,headers);
String answer = restTemplate.postForObject(url, entity, String.class);
System.out.println(answer);
}