Mapeando o mesmo URL para métodos diferentes com base no corpo da solicitação na primavera

Quero saber se é possível mapear o mesmo URL para métodos diferentes noRestController classe, baseada apenas no corpo da solicitação. Por exemplo:

@RequestMapping(value="/delete", method=RequestMethod.POST )
public void delete(@RequestBody String id) {
    //do something
}

@RequestMapping(value="/delete", method=RequestMethod.POST )
public void delete(@RequestBody Book book) {
    //do something
}

O corpo da solicitação sempre será uma carga útil JSON. se é{"id":"foo"} Eu quero que o primeiro método seja chamado. Se o corpo da solicitação for:

{
    "title":"Spring Guide",
    "author":"John Doe"
}

Eu quero que o segundo método seja chamado. Isso é possível?

questionAnswers(1)

yourAnswerToTheQuestion