Ich benutze Spring Boot und Thymeleaf für ein Projekt. Ich sende einige Parameter in der URL wie diese "Historique / stock? devise = EUR".
Ich frage mich, ob es eine globale Konfiguration zum Codieren der Parameter in der URL und in meinem Controller zum Decodieren gibt
Danke dir :)
UPDATE:
<tbody>
<tr th:each="agence : ${listeAgences}">
<td><input th:type="checkbox" th:name="selected"
th:value="${agence?.id}" /></td>
<td><a class="btn-outline-primary"
th:href="@{"/admin/Agence/visualisationAgence?id="+${agence.id}}"><th:block
th:text="${agence?.nom}" /></a></td>
</tr>
</tbody>
Und hier ist mein Controller
@RequestMapping(value = "/visualisationAgence", method = RequestMethod.GET)
public ModelAndView visualisationAgence(ModelAndView modelAndView, String id) {
AgenceDTO agence = agenceService.findAgenceById(Integer.parseInt(id));
Wie Sie sehen können, dass ich die ID übergebe, ist sie nicht codiert. Ich weiß nicht, ob es eine globale Methode zum Codieren gibt. Lesen Sie sie dann, damit der Benutzer die ID in der URL nicht sieht
Antworten:
1 für die Antwort № 1Geben Sie den URL-Parameter in Thymeleaf wie folgt an:
<a th:href="@{/admin/Agence/visualisationAgence(id=${agence.id})">
Sehen Standard-URL-Syntax für Details.
Dann im Controller mit "decodieren" @RequestParam
Anmerkung:
public ModelAndView visualisationAgence(@RequestParam("id") String id, ...)