J'ai une interface DTO qui utilise des jointures pour obtenir des données de différentes tables. J'ai créé une interface DTO avec des méthodes getter abstraites comme celle-ci.
public interface HRJobsDTO { String getEditorName(); String getEditorId(); String getBillingMonth(); Integer getEditorWordCount(); Integer getJobCount(); Integer getEmployeeGrade(); Float getGrossPayableAmount(); Float getJobBillingRate(); Float getTaxDeduction(); Float getTaxDeductionAmount(); Float getNetPayableAmount(); String getInvoiceStatus(); String getFreelanceInvoiceId(); }
Dans cette interface, ma méthode getFreelanceInvoiceId(); utilise la fonction json_arrayagg de MySQL pour renvoyer un tableau JSON. J'ai changé le type de données en String, String[] et Arraylist mais cela renvoie quelque chose comme ceci dans ma réponse
"freelanceInvoiceId": "["4af9e342-065b-4594-9f4f-a408d5db9819/2022121-95540", "4af9e342-065b-4594-9f4f-a408d5db9819/2022121-95540", "4af9e342-065b-4594-9f4f-a408d5db9819/20221215-53817", "4af9e342-065b-4594-9f4f-a408d5db9819/20221215-53817", "4af9e342-065b-4594-9f4f-a408d5db9819/20221215-53817"]"
Existe-t-il un moyen de renvoyer uniquement des tableaux sans barres obliques inverses ?
Vous pouvez utiliser @Converter dans JPA (également implémenté par hibernate)
et référencez-le dans la classe pojo comme indiqué ci-dessous