Como postar várias “record sets” de um formulário HTML para JSP ou um Servlet Java?

StackOverflow https://stackoverflow.com/questions/1016272

Pergunta

O JSP ou qualquer relacionado leve tecnologia como JSTL executar HTTP POST "dados agrupamento", ou suporte elemento de formulário "indexação" na forma como PHP faz?

Por exemplo, você pode criar um formulário HTML com as seguintes entradas:

<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]" />

... e PHP irá analisar isso em uma matriz associativa aninhada automaticamente. Do JSP, Servlets Java, ou qualquer especificação relacionada ou ferramenta de fornecer este tipo de tradução out of the box?

O objetivo é enviar vários "grupos de recordes" em uma única forma, e processá-los do lado do servidor em JSP ou um Servlet.


Requisitos:

  • A funcionalidade não pode dependem de JavaScript
  • Não há quadros completos como Spring, Struts, ou similar
  • Eu estou tentando evitar reinventar a roda com a minha própria convenção de nomenclatura e de Cordas manual de análise / Regex

Links relacionados:

Foi útil?

Solução

Tente este,

<input type="text" name="personNames" />
<input type="text" name="personAges" />
<input type="text" name="personNames" />
<input type="text" name="personAges" />

Você deve considerar para criar campos de entrada usando um loop, você não precisa postfix o name mesmo. e obter valores de parâmetros como este em seu servlet,

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

Ele virá na mesma ordem, conforme definido em seu HTML. Então loop sobre ele como abaixo,

for( String name : names) {
   System.out.println(name);
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top