Comment publier plusieurs «jeux d’enregistrements» d’un formulaire HTML à un JSP ou à un servlet Java?
-
06-07-2019 - |
Question
Est-ce que JSP ou toute technologie légère connexe, telle que JSTL, exécute HTTP POST "groupement de données", ou élément de formulaire de prise en charge "indexation"? comme le fait PHP?
Par exemple, vous pouvez créer un formulaire HTML avec les entrées suivantes:
<input type="text" name="person[1][name]" />
<input type="text" name="person[1][age]" />
<input type="text" name="person[2][name]" />
<input type="text" name="person[2][age]" />
... et PHP analysera cela automatiquement dans un tableau associatif imbriqué. JSP, les servlets Java ou toute autre spécification ou outil associé fournissent-ils ce type de traduction par défaut?
L'objectif est de soumettre plusieurs " groupes d'enregistrement " sous une forme unique et les traiter côté serveur dans JSP ou un servlet.
Conditions requises:
- La fonctionnalité ne peut pas compter sur JavaScript
- Pas de framework complet comme Spring, Struts, etc.
- J'essaie d'éviter de réinventer la roue avec ma propre convention de dénomination et mon analyse manuelle des chaînes / Regex
Liens connexes:
La solution
Essayez ceci,
<input type="text" name="personNames" />
<input type="text" name="personAges" />
<input type="text" name="personNames" />
<input type="text" name="personAges" />
Vous devriez envisager de créer des champs de saisie à l'aide d'une boucle. Vous n'avez pas besoin de postfixer le nom
même. et obtenez des valeurs de paramètres comme celle-ci dans votre servlet,
String[] names = request.getParameterValues("personNames");
String[] ages = request.getParameterValues("personAges");
Cela viendra dans le même ordre que celui défini dans votre code HTML. Puis passez dessus comme ci-dessous,
for( String name : names) {
System.out.println(name);
}