@JsonProperty annotation sur le terrain ainsi que les getter/setter

J'ai hérité d'un certain peu de code qui a l' @JsonProperty annotation sur lecture/définition. Le but est donc que lorsque l'objet est sérialisé à l'aide de l'Jackson bibliothèque, les champs ont que le nom spécifique.

Code actuel:

private String fileName;

@JsonProperty("FILENAME")
public String getFileName()
{
    return fileName;
}

@JsonProperty("FILENAME")
public void setFileName(String fileName)
{
    this.fileName = fileName;
}

Maintenant pour un autre outil, j'ai besoin d'annoter le terrain avec JsonProperty ainsi. Ce sera donc mon code modifié:

@JsonProperty("FILENAME")
private String fileName;

@JsonProperty("FILENAME")
public String getFileName()
{
    return fileName;
}

@JsonProperty("FILENAME")
public void setFileName(String fileName)
{
    this.fileName = fileName;
}

Quelqu'un a utilisé ce même annotation sur les deux - le terrain ainsi que de la lecture/définition? J'ai regardé sur le net mais n'ai rien vu.

J'ai compilé & exécuter le code, mais je ne suis pas si sûr que ce serait-ce la cause des problèmes en bas de la route. Des idées sur ce point?

  • Comme il est, vous n'auriez pas un problème parce que vous ne faites rien dans l'incubateur d'autre que la définition de la valeur. Toutefois, si cela devait changer, je serais vous inquiétez au sujet de laquelle un Jackson utilisation; si il a pris du champ, vous risquez de ne pas obtenir le comportement que vous attendez. Malheureusement, je ne trouve rien sur l'ordre de priorité pour vous.
  • +1. Oui, un ordre de priorité serait utile, mais bien sûr ça ne devrait vraiment pas AVOIR des noms différents.
InformationsquelleAutor OceanBlue | 2012-07-17