Я создаю службу заказов, новую для мира RestServices.
Мне нужно прочитать модель заказа в OrderDTO
и сохранить ее в БД.
Для этого у меня есть метод ниже:
@PostMapping(produces = { MediaType.APPLICATION_XML_VALUE, MediaType.APPLICATION_JSON_VALUE })
public ResponseEntity<OrderDTO> createOrder(@Valid @RequestBody OrderDTO orderDTO) {
Order order = new Order(orderDTO);
Order createdOrder = orderService.createOrder(order);
OrderDTO createdOrderDTO = new OrderDTO(order);
ResponseEntity<OrderDTO> responseEntity = new ResponseEntity<OrderDTO>(createdOrderDTO, null, HttpStatus.CREATED);
return responseEntity;
}
Все работает нормально, но у меня есть сомнения по поводу текущего дизайна:
- Я читаювход в DTO
- Для сохранения объекта, который я преобразую, в объект Order, который будет сохранен Hibernate
- Снова, чтобы отправить ответ обратно, я преобразую объект фактического заказа в DTO.
наконец, я создам 4-5 объектов на запрос, если мое приложение получило 100 запросов, оно может столкнуться с проблемой памяти.
Как я могу читать данные модели и эффективно сохраняться?