Comment PUBLIER plusieurs "ensembles d'enregistrements" d'un formulaire HTML vers JSP ou un servlet Java?


Est-ce que JSP ou toute technologie lightweight associée comme JSTL effectue un "regroupement de données" HTTP POST, ou prend en charge l ' "indexation" des éléments de formulaire 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 l'analysera automatiquement dans un tableau associatif imbriqué. Est-ce que JSP, les servlets Java ou toute spécification ou outil connexe fournissent ce type de traduction prêt à l'emploi?

L'objectif est de soumettre plusieurs "enregistrer des groupes" dans un seul formulaire et les traiter côté serveur dans JSP ou un Servlet.


Exigences:

  • La fonctionnalité ne peut pas s'appuyer sur JavaScript
  • Pas de cadres complets comme Spring, Struts ou similaires
  • J'essaie d'éviter de réinventer la roue avec ma propre convention de nommage et l'analyse manuelle des chaînes / Regex

Liens connexes:

Author: Community, 2009-06-19

1 answers

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 en utilisant une boucle, vous n'avez pas besoin de postfix le name même. et obtenez des valeurs de paramètre comme celle-ci dans votre servlet,

String[] names = request.getParameterValues("personNames");
String[] ages = request.getParameterValues("personAges");

Il viendra dans le même ordre que celui défini dans votre HTML. Puis boucle dessus comme ci-dessous,

for( String name : names) {
   System.out.println(name);
}
 5
Author: Adeel Ansari, 2009-06-19 04:02:18