Я пытаюсь реализовать очень простое веб-приложение Spring Boot. Так как я сопоставляю объект JSON с сущностью (говорит «Сущность клиента») с помощью метода @RequestBody
.
В addCustomer , я хочу связать / отобразить только поля firstName & lastName и игнорируйте поле Id , даже если в ответе JSON клиента есть это поле.
И в updateCustomer метод Iнеобходимо сопоставить все поля, включая Id , потому что мне нужно поле Id для обновления сущности.
Как можно игнорировать некоторые или одно поле в процессе автоматического сопоставления@RequestBody
.
@RestController
@RequestMapping("/customer-service")
public class CustomerController {
@Autowired
CustomerServiceImpl customerService;
//This method has to ignore "id" field in mapping to newCustomer
@PostMapping(path = "/addCustomer")
public void addCustomer(@RequestBody Customer newCustomer) {
customerService.saveCustomer(newCustomer);
}
//This method has to include "id" field as well to updatedCustomer
@PostMapping(path = "/updateCustomer")
public void updateCustomer(@RequestBody Customer updatedCustomer) {
customerService.updateCustomer(updatedCustomer);
}
}
@Entity
@Table(name = "CUSTOMER")
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long cusId;
private String firstName;
private String lastName;
//Default Constructor and getter-setter methods after here
}