首页>代码>Spring Boot整合SpringFox Swagger2实现REST API增删改查项目实例>/springboot-swagger/src/main/java/com/hellokoding/springboot/restful/product/ProductAPI.java
package com.hellokoding.springboot.restful.product; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Optional; @Slf4j @RequiredArgsConstructor @RestController @RequestMapping("/api/v1/products") public class ProductAPI { private final ProductService productService; private final ProductMapper productMapper; @GetMapping public ResponseEntity<List<ProductDTO>> findAll() { return ResponseEntity.ok(productMapper.toProductDTOs(productService.findAll())); } @PostMapping public ResponseEntity<ProductDTO> create(@RequestBody ProductDTO productDTO) { productService.save(productMapper.toProduct(productDTO)); return ResponseEntity.status(HttpStatus.CREATED).body(productDTO); } @GetMapping("/{id}") public ResponseEntity<ProductDTO> findById(@PathVariable Long id) { Optional<Product> product = productService.findById(id); return ResponseEntity.ok(productMapper.toProductDTO(product.get())); } @PutMapping("/{id}") public ResponseEntity<ProductDTO> update(@PathVariable Long id, @RequestBody ProductDTO productDTO) { Product product = productMapper.toProduct(productDTO); product.setId(id); productService.save(product); return ResponseEntity.status(HttpStatus.ACCEPTED).body(productDTO); } @DeleteMapping("/{id}") public ResponseEntity delete(@PathVariable Long id) { productService.deleteById(id); return ResponseEntity.status(HttpStatus.ACCEPTED).build(); } }
最近下载更多
503382513 LV10
2023年9月6日
lironggang LV38
2023年1月5日
minghaozhi LV5
2022年11月1日
wsupsup LV16
2022年9月28日
bjwsnl LV22
2022年9月6日
329512801 LV28
2022年2月22日
wuyu8995861 LV7
2021年12月13日
koumeiyuu LV9
2021年6月29日
zhulei886 LV14
2021年5月19日
cas LV9
2021年4月5日