@Service public class ProductService { @Autowired private ProductRepository productRepository; public Flux getAllProducts() { return productRepository.findAll(); } public Mono getProduct(String id) { return productRepository.findById(id); } public Mono save(Product product) { Product newProduct = new Product(); newProduct.setName(product.getName()); return productRepository.save(newProduct); } public Mono deleteProduct(String id) { return productRepository.deleteById(id); } public Mono update(Mono product) { return product .flatMap((p) -> productRepository.findById(p.getId()) .flatMap(product1 -> { product1.setName(p.getName()); return productRepository.save(product1); })); } }