Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Ajudas técnicas / Manual de JSP
SEÇÕES
Manuais relacionados
+Ajudas técnicas
+Manual de JSP
Categorias
+JSP

Índice do Manual Ajudas técnicas
+ Links sem sublinhado
+ Formatos gráficos para páginas web
+ Ícone em favoritos
+ Definições de tela
+ Os domínios e como registrá-los
+ Os 7 domínios novos
+ Segredos dos buscadores
+ Registro em buscadores
+ Contato com navegante
+ Caracteres especiais
+ Usabilidade para PDAs
+ MP3 vs. Servidores gratuitos
+ Avaliar uma web
+ Frames sem bordas
+ Tabela com esquinas arredondadas
+ Tabela com as esquinas arredondadas, tipo 2
+ Alguns conselhos para webmasters
+ Como colocar um fórum na sua página web
+ Desabilitar a barra de imagens do Internet Explorer
+ Como evitar que um página se imprima
+ Estatísticas em um web site
+ PDF para todos
+ Como escolher uma hospedagem
+ Sistemas Operacionais para PDA's
+ Navegabilidade, um fator fundamental
+ Conexão a um database server com JSP
+ O PC de um webmaster
+ Construção dinâmica de menus de seleção utilizando JSP
+ Instalação de Tomcat para utilizar servlets ou JSP
+ De que trata sua Web?
+ Mambo, sistema de administração de conteúdos
+ Uma dor de cabeça chamado spyware
+ O que são os vírus informáticos?
+ Ocultar um e-mail de um link para evitar o spam
+ Os buscadores em Internet I
+ Os buscadores em Internet II
+ O posicionamento nos buscadores de Internet
+ Proteção antivírus em servidores de correio eletrônico
+ Proteção Anti-vírus em uma rede corporativa I
+ Proteção antivírus em clientes de correio eletrônico
+ Pensar nos objetivos para saber o que aprender
+ Extensões de Firefox úteis para desenvolvedores do web
+ Sites oficiais hackeados
+ Tradutor de Google - Como usa-lo em minha Web?
+ Os temas que mais interessam aos navegantes
+ Web Developer, extensão para Firefox
+ Introdução ao FTP
+ Estabelecer permissões em FTP
+ Tipos de freeware e não freeware
+ Utilizar informação pública para realizar uma web
+ Números de contas bancárias
+ Como medir o rendimento de um computador
+ 10 Razões pelas quais usar o navegador Mozilla Firefox
+ Yotophoto, um buscador de imagens de livre uso
+ Google Imagens, a busca de imagens na web
+ Combinar correspondência
+ Reduzir as devoluções e a Fraude
+ Balancear adaptadores de Rede
+ Recuperação de dados
+ Tutorial do comando chmod
+ Spam
+ Como criar um CD ou DVD autorun que inicie uma página web?
+ DNS Dinâmico
+ Programar uma tarefa em Linux com Cron e wget
+ Buscador corporativo
+ Segurança na rede: Firewall
+ As principais 5 vulnerabilidades Web
+ Robots.txt
+ Segmentação de uma campanha de banners

Descrição dos capítulos

Índice do Manual Manual de JSP
+ O que é JSP
+ Comparando JSP com ASP
+ Conexão a um database server com JSP
+ Construção dinâmica de menus de seleção utilizando JSP
+ Instalação de Tomcat para utilizar servlets ou JSP
+ Uso de XML e XSL em JSPs
+ Manejo de arquivos com JSP

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net


Construção dinâmica de menus de seleção utilizando JSP

Este artigo propõe uma forma ordenada de gerar estes menus utilizando para isso JSP.


Acontece quando temos que gerar menus de seleção dentro de páginas HTML. Muitas vezes estes menus são idênticos ou muito parecidos, e pode ocorrer de ocuparem muito lugar dentro de nossa página web.

A idéia é passar a esta função os parâmetros que nos interessam, e deixar que ela se ocupe do resto. Vejamos o código da página, com uma breve explicação abaixo de cada bloco de código.

<%@ page language="java"%>
<%!
   private void writeMenu(javax.servlet.jsp.JspWriter out, int startValue,
  int endValue, int selectedValue){
  try{
  // esta linha eh opcional...
   out.println("<option value=\"-1\" selected>
  Selecione uma opcao</option>");

  // comeco o ciclo com a classe de valores dado.
  for (int i=startValue; i<(endValue+1); i++){
  // se o valor atual corresponde ao valor do ciclo,
  //faco aparecer como selecionado
   if (i == selectedValue){
    out.println("<option value=\""+i+"\"
    selected>"+i+"</option>");
   }
   else{
    out.println("<option value=\""+i+"\">"+i+"</option>");
   }
   }
  }catch(java.io.IOException e1){
   System.out.println(e1);
   }
}
%>

Esta é a função que gera o menu, recebe como parâmetros o valor inicial, o valor final, o valor atual e o objeto JspWriter, que permite escrever dinamicamente sobre a página.

<%

java.util.GregorianCalendar cal = new java.util.GregorianCalendar();
    int day = cal.get(cal.DAY_OF_MONTH);
    int month = (cal.get(cal.MONTH)) + 1;
    int year = cal.get(cal.YEAR);

%>


Criamos variáveis de página, que nos servirão somente para provar a função.

<html>
<head>
<title>Construção dinâmica de menus de seleção</title>
</head>

<body>

<table>
   <h1>construcao dinamica de menus de selecao</h1>
    <tr>
     <td>Dia:
     <select>
      <% writeMenu(out,1,31,day); %>
     </select>
     </td>

     <td>Mes:
     <select>
      <% writeMenu(out,1,12,month); %>
     </select>

     </td>

     <td>Ano:
     <select>
      <% writeMenu(out,2000,2010,year); %>
     </select>

     </td>

     </tr>
   </table>
  </body>
</html>


Finalmente o html, muito simples, que mostra como se usa a funcao.
Uma variante deste procedimento seria, por exemplo, ler dados de uma database. Por exemplo, se quisermos gerar um clássico menu com a lista de países do mundo, poderemos fazer uma função deste tipo:

public void writeCountryMenu(Connection connection,
javax.servlet.jsp.JspWriter out, int currentValue){
   try{
     String sqlString = " SELECT id,Name from T_Countries order by orderview ";

     Statement stmt = connection.createStatement();
     ResultSet rs = stmt.executeQuery(sqlString);
     while (rs.next()){
       String selected = "";
      int countryId = rs.getInt("id");
      if (countryId==currentValue)
       selected = "SELECTED";
      out.print("<option value=\""+countryId+"\" "+selected+">"+rs.getString("Name")+"</option>");
     }
     rs.close();
   stmt.close();

   }catch(Exception e){
     System.out.println(e);
   }
  }


Neste caso obviamente temos que passar uma conexão a um database (pode ser MsSQL, MySql, etc.) no qual temos a tabela T_countries, com os campos id, name e orderview.

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Ajudas técnicas

Dentro de Manual de JSP

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em JSP


Comentário sem rever
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foi encontrado um comentário sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites