Você está aqui: Java Servlets ::: Dicas & Truques ::: Formulários

Como receber e processar uma matriz (array) de check boxes

Quantidade de visualizações: 10331 vezes


Muitas vezes precisar tratar uma série de check boxes geradas dinamicamente em um formulário. Para esta tarefa, precisamos empregar algumas técnicas bem interessantes. A primeira delas consiste em fornecer o mesmo valor para a propriedade name dos controles check box.

Comece analisando o código para o formulário:
<form name="cadastro" action="EstudosServlet" method="post">
  Suas linguagens favoritas:<br>
  <input name="linguagem" type="checkbox" id="java" 
    value="Java">Java<br>
  <input name="linguagem" type="checkbox" id="php" 
    value="PHP">PHP<br>
  <input name="linguagem" type="checkbox" id="python" 
    value="Python">Python<br>
  <br>
  <input type="submit" name="Submit" value="Enviar">
</form>
Veja que a action deste formulário aponta para o servlet que receberá e processará os dados. Observe ainda o uso do método POST, o que nos deixa tranquilos para usar o método doPost() no servlet.

Agora crie o servlet abaixo, envie o formulário e veja o resultado:
package estudos;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class EstudosServlet extends HttpServlet{
  public void doPost(HttpServletRequest req,
    HttpServletResponse res) throws ServletException,
    IOException{

    PrintWriter pw = res.getWriter();

    // obtém os valores das check boxes marcadas
    String linguagens[] = 
      req.getParameterValues("linguagem");
    
    pw.println("Você marcou " + linguagens.length + 
     " check boxes.<br>");
    pw.println("As linguagens marcadas foram:" + "<br><br>");    

    for(int i = 0; i < linguagens.length; i++){
      pw.println(linguagens[i] + "<br>");
    }
  }
}
Como definimos o mesmo valor para a propriedade name dos elementos checkbox, conseguimos tratar todos as check boxes como uma matriz (array) a partir do servlet. Um detalhe interessante deste código é que conseguimos facilmente obter a quantidade de check boxes que foram marcadas.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Java Servlets

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 32 usuários muito felizes estudando em nosso site.