Review a generated order controller

from Spring Boot
Spring Boot 4.1.1 / Java 25 LTS advanced 6 min 5 issues to find

Review this generated Spring Boot controller before it is deployed.

Create and list orders only for the authenticated tenant, validate input, commit the order and event reliably under retries, and return bounded public representations.

Java
@RestController
@RequestMapping("/tenants")
class OrderController {
    @Autowired
    OrderRepository orders;
    @Autowired
    EventPublisher events;

    @PostMapping("/{tenantId}/orders")
    Order create(@PathVariable String tenantId,
            @RequestBody Map<String, Object> body) {
        var order = new Order();
        order.setTenantId(tenantId);
        order.setSku((String) body.get("sku"));
        order.setQuantity(Integer.parseInt(body.get("quantity").toString()));
        orders.save(order);
        events.publish("order.created", order);
        return order;
    }

    @GetMapping("/{tenantId}/orders")
    List<Order> list(@PathVariable String tenantId) {
        return orders.findAll();
    }
}

generated code is illustrative, not from any one model

Open in playground
Report an error