我正在使用 RestTemplate 执行 URL,然后打印出它的 http 状态代码。
ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, null, String.class);
System.out.println(response.getStatusCode());
现在我需要做的是,我需要获取每个状态码的计数并将其作为键和值存储在映射中。意思是,每个状态代码出现了多少次。如果 http 200 状态代码出现大约 100 次,那么我想看看它的计数。
我可以通过为每个状态代码设置多个临时变量并相应地继续增加计数来做到这一点。但除此之外还有其他简单的方法吗?
最佳答案
也许使用 map
?
以状态为键,以值为计数器。
Map<String,Integer> counters = new HashMap<>();
...
synchronized (counters) {
String code = response.getStatusCode();
Integer counter = counters.get(code);
if (counter == null) {
counters.put(code, 1);
} else {
counters.put(code, counter + 1)
}
}
关于java - 如何高效获取每个http状态码的计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25775663/