Я работаю над примером проекта, в котором нам нужно сохранить некоторые значения в Hashmap и извлечь их через службы REST.
размещение данных как
{"timestamp":"2015-09-01T16:40:00.000Z", "temperature":"27.2"}
Метод сохранения:
@PostMapping
public ResponseEntity<?> createCalc(@Valid @RequestBody Calc calc) {
store.add(measurement);
}
...
Класс магазина
private HashMap<ZonedDateTime, Calc> calcHashMap;
...
public void add(Calc calc) {
calcHashMap.put(calc.getTimestamp(), calc);
}
После сохранения мы хотели получить данные из Hashmap, никто из нижеприведенных не может их найти.
http://localhost:8000/measurements/2015-09-01T16:40:00.000Z
or
http://localhost:8000/measurements/2015-09-01T16:40Z
Метод, который мы используем:
@GetMapping("/{timestamp}")
public ResponseEntity<Calc> getCalc(@PathVariable ZonedDateTime timestamp) {
Calc calc = process.fetch(timestamp);
Process.java класс
public Calc fetch(ZonedDateTime timestamp) {
return calcMap.get(timestamp);
}
Добавление этого к Hashmap и Timestamp в качестве ключа. Мы видим эти различия:
- При печати значения в консоли с помощью System.out.println 2015-09-01T16: 40Z
- Возврат из метода REST GET в POSTMAN показывает это 2015-09-01T16: 40: 00Z
- При фактическом значении 2015-09-01T16: 40: 00.000Z
Мне нужно найти временную метку магазина и вернуть объект, но он не найден из-за указанных выше различий. Как это решить?