Я использую Java-пружину для своего сервера.
У меня вопрос, как я могу получить пользовательский объект через контроллер.
Пример того, что я имею в виду:
Я знаю, что могу сделать это, выполнив две функции:
@RequestMapping(
path = arrayOf("getObject", "getObject/"),
method = arrayOf(RequestMethod.GET))
open fun getRecord1(@RequestBody data: CustomObjectOption1): ResponseEntity<*> {
return ResponseEntity<Any>(data.name,HttpStatus.OK)
}
@RequestMapping(
path = arrayOf("getObject", "getObject/"),
method = arrayOf(RequestMethod.GET))
open fun getRecord2(@RequestBody data: CustomObjectOption2): ResponseEntity<*> {
return ResponseEntity<Any>(data.number,HttpStatus.OK)
}
но я хочу сделать это только с одной конечной точки:
@RequestMapping(
path = arrayOf("getObject", "getObject/"),
method = arrayOf(RequestMethod.GET))
open fun getRecord(@RequestBody data: CustomObjectOption): ResponseEntity<*> {
if(data instance option1)
return ResponseEntity<Any>(data.name,HttpStatus.OK)
еще
вернуть ResponseEntity (data.number, HttpStatus.OK)
еще
}
такой, что объект может быть таким:
вариант 1:
public class CustomObject {
private String name;
private Long id;
}
или вариант 2:
public class CustomObject {
private List<Integer> number;
private List<Long> count;
}
Возможно ли это сделать весной в яве?
Единственное решение, о котором я думал, это использовать наследование , но я хотел бы знать, есть ли другой способ ...
Спасибо за помощь