Итак, я разрабатываю некоторые микроуслуги в JAVA с помощью Spring Boot и сталкиваюсь с некоторыми проблемами, связанными с объектами, которые я использую.
Итак, у меня есть служба данных, которая является интерфейсом БД и расписаниемсервис, который будет вызывать интерфейс.Оба работают со своими собственными объектами Response и Request, хотя на данный момент они в основном одинаковы.
Пожалуйста, не обращайте внимания на то, что в приведенном ниже коде нет методов получения и установки.
Служба данных
@RestController
@RequestMapping("")
public class DataServiceResource {
@GetMapping(...)
public ResponseEntity<JobDetailsResponse> getJobDetailsSingleDate(@PathVariable("singledate") final String date) {
...
return response;
}
}
JobDetailsResponse
@JsonIgnoreProperties(ignoreUnknown = true)
public class JobDetailsResponse {
private Object requestSent;
private List<Job> jobsFound;
private boolean hasError;
private String errorMessage;
private LocalDateTime dataTimestamp;
}
JobDetailsSingleDateRequest
@JsonIgnoreProperties(ignoreUnknown = true)
public class JobDetailsSingleDateRequest {
private String dateFrom;
}
Служба планирования
@RestController
@RequestMapping("")
public class SchedulingServiceResource {
...
@Autowired
private RestTemplate restTemplate;
@GetMapping(...)
public ResponseEntity<ReportDetailsResponse> getReportDetailsSingleDate(@PathVariable("singledate") final String singledate) {
ResponseEntity<ReportDetailsResponse> quoteResponse = this.restTemplate.exchange(DATA_SERVICE_JOB_DETAILS_SINGLE_DATE_URL + singledate, HttpMethod.GET,
null, new ParameterizedTypeReference<ReportDetailsResponse>() {});
...
return response;
}
ReportDetailsSingleDateRequest
@JsonIgnoreProperties(ignoreUnknown = true)
public class ReportDetailsSingleDateRequest {
private String dateFrom;
}
* 1021SponseDese1022 *
@JsonIgnoreProperties(ignoreUnknown = true)
public class ReportDetailsResponse {
private Object requestSent;
private List<Job> jobsFound;
private boolean hasError;
private String errorMessage;
private LocalDateTime dataTimestamp;
}
Поэтому, когда я иду по методу quoteResponse.getBody().getJobsFound()
, чтобы проверить данные, полученные из службы данных, Мой список заданий пуст.Я читал, что если объекты равны по определению, Spring будет использовать отражение для передачи значений, но в моем случае это не пробуждение.
Есть ли способ использовать микросервис без необходимости добавления зависимости службы данныхв службу планирования?
Извините за длинный пост, но до сих пор я не нашел подходящего примера для своего случая.Все примеры, которые я нашел, работают со списком как возврат микросервиса.
Заранее спасибо.