#441 Code Review of Order Creation Service
Perform a refactoring:
@RestController
@RequestMapping("/orders")
public class OrderController {
@Autowired
private OrderService orderService;
@PostMapping
public ResponseEntity<String> createOrder(@RequestBody OrderRequest request) {
orderService.processOrder(request);
return ResponseEntity.ok("ok");
}
}
@Service
public class OrderService {
@Autowired
private OrderRepository orderRepository;
@Autowired
private KafkaTemplate<String, String> kafkaTemplate;
public void processOrder(OrderRequest request) {
Order order = new Order();
order.setUserId(request.getUserId());
order.setTotal(request.getTotal());
order.setStatus("NEW");
orderRepository.save(order);
kafkaTemplate.send("orders", String.valueOf(order.getId()), "order_created");
}
}
@Entity
@Data
public class Order {
@Id
@GeneratedValue
private long id;
private String userId;
private String status;
private BigDecimal total;
}
@Data
public class OrderRequest {
private String userId;
private BigDecimal total;
}
Question review
Sign in to start the dialogue
The mentor keeps the context of the current question and your previous messages.
Sign in
Available with Premium
This is just one of the solutions available with Premium. And more:
- 250+ advanced lectures
- 1300+ practice exercises
- 500+ solutions to problems from real interviews
- Personalized Java Hub certificates
- Expanded access to the AI mentor