Precisa de um freelancer, códigos-fonte e exemplos completos?
Bem-vindo(a) ao meu site. Além de realizar alguns serviços como freelancer eu tenho alguns códigos-fonte e exemplos completos de Java, Delphi, PHP, Python, C/C++, Hibernate, JPA, Spring, JSP, Servlets, Ruby, Ruby On Rails e muitas outras linguagens e frameworks. Veja como falar comigo clicando aqui.
 
Arquivo de Códigos - Página Inicial
Códigos-fonte
» Códigos-fonte e exemplos completos
Linguagens
» ActionScript
» Adobe AIR
» Adobe Flex
» AJAX
» C
» C#
» C++
» CSS
» Delphi
» DHTML - Dynamic HTML
» HTML/XHTML
» Java
» JavaFX
» JavaScript
» Java Servlets
» JSP - Java Server Pages
» Perl
» PHP
» PHP-GTK
» Python
» Ruby
» Tcl/Tk
» VB.NET
Bancos de Dados
» IBM DB2
» MySQL
Frameworks
» CodeIgniter
» jQuery
» JSF - Java Server Faces
» Qt
» Ruby On Rails
» Struts
» Struts 2
» wxWidgets
» Zend Framework
Container/Servidor
» Apache Tomcat
» Apache Web Server
Ferramentas
» Apache Ant
» iTextSharp (iText#)
Referências
» CSS1 e CSS2
» JavaScript
Serviços On-Line
» Qual é meu IP?
» Tabela Cores HTML I
» Tabela Cores HTML II
» Lista de Mime Types
» Códigos Teclas Virtuais
Usuários On-Line
Visitantes: 100
PHP
O que há de novo no PHP 5?
40 dicas e truques sobre como trabalhar com datas e horas em PHP
60 dicas e truques sobre como trabalhar com strings e caracteres em PHP
PHP e a Orientação a Objetos - POO (Curso Completo)

DHTML
Curso completo de DHTML para iniciantes

CSS
Como definir uma imagem de fundo fixa na página
Definindo uma imagem de fundo para botões HTML
Você está aqui: Inicio -> Tutoriais -> JSP
Diretivas :: Aprenda a importar suas próprias classes para uma página JSP
Vimos em tópicos anteriores que pacotes de classes ou classes individuais podem ser importados para uma página JSP usando-se o atributo import na diretiva de página:

<%@ page import="java.util.*" %>

Neste tópico veremos como é possível criar nossas próprias classes e usá-las em uma página JSP. Será um bom exercício antes de estudarmos JavaBeans. Comece escrevendo a seguinte classe:

Código para Estados.java:

package estudos;

public class Estados{
  String selecionado;
  String estados[] = {"GO", "MT", "SP", "RJ", "TO",
                      "MA", "RS", "MG", "CE", "SC"};

  public Estados(String sel){
    selecionado = sel;
  }

  public Estados(){
    selecionado = estados[0];
  }

  public String toString(){
    String html = "<select name=\"estado\">\n";

    for(int i = 0; i < estados.length; i++){
      if(estados[i].equals(selecionado))
        html += " <option value=\"" + estados[i] + "\" selected>" +
             estados[i] + "</option>\n";
      else
        html += " <option value=\"" + estados[i] + "\">" +
             estados[i] + "</option>\n";
    }

    html += "</select>";

    return html;
  }
}


Experimente compilar esta classe e vamos analisá-la cuidadosamente. O primeiro passo é observar que esta classe fará parte de um pacote chamado estudos:

package estudos;

Assim, nossa primeira preocupação é como disponibilizar a classe de modo que a aplicação web a encontre. Nada muito complicado. Tudo que você tem a fazer é criar um diretório chamado estudos dentro do diretório classes que está contido no diretório WEB-INF de sua aplicação web. Agora copie o arquivo Estados.class para o diretório recém-criado.


Nota: Se você fizer alterações na classe depois de esta ser disponibilizada para o container, pode haver a necessidade de reiniciar a aplicação web para que as alterações sejam refletidas. Clique aqui para aprender como fazer isso no Tomcat.

O nome de nossa classe personalizada é Estudos e servirá para montar um elemento HTML select contendo os nomes de todos os estados. Esta classe contém duas variáveis globais. A primeira é apenas uma String que armazenará o valor do estado que deverá aparecer selecionado no elemento select:

String selecionado;

A segunda variável é um array do tipo String contendo os estados a serem mostrados no elemento:

String estados[] = {"GO", "MT", "SP", "RJ", "TO",
                    "MA", "RS", "MG", "CE", "SC"};


Por questões de espaço não coloquei todos os estados, faça isso se quiser usar este código em uma aplicação real.

O primeiro construtor da classe receberá como argumento o estado que deverá estar selecionado e o fornecerá à variável global selecionado:

public Estados(String sel){
  selecionado = sel;
}


O segundo construtor (que pode ser chamado sem argumentos) simplesmente fornece o primeiro elemento do array estados à variável selecionado:

public Estados(){
  selecionado = estados[0];
}


E agora a parte mais complexa da classe: o método toString. É com o auxilio deste método que conseguimos montar o elemento select na página. A primeira linha do método:

String html = "<select name=\"estado\">\n";

cria uma variável chamada html e define como seu valor a tag de abertura do elemento select. Fique atento ao uso da barra de escape "\" para preservar as aspas que circundam os valores fornecidos aos atributos do elemento. A quebra de linha não é obrigatória. Ela apenas ajudará na formatação do código fonte da página.

Em seguida temos um laço for que é executado uma vez para cada elemento do array estados:

for(int i = 0; i < estados.length; i++){
  // o código do laço vai aqui
}


Na primeira linha dentro deste laço nós testamos se o valor do array sendo lido é igual ao conteúdo da variável selecionado. Se o teste resultar verdadeiro, nós acrescentamos o atributo selected ao elemento option. Isso faz com que o valor seja selecionado quando o elemento select for exibido na página:

if(estados[i].equals(selecionado))
  html += " <option value=\"" + estados[i] + "\" selected>" +
     estados[i] + "</option>\n";
else
  html += " <option value=\"" + estados[i] + "\">" + estados[i] +
     "</option>\n";


se o teste resultar falso nós simplesmente criamos elementos option com os valores do array.

A linha:

return html;

Devolverá à página JSP o conteúdo HTML a ser exibido.

Pronto. A classe já está criada. Agora é hora de testá-la em uma página JSP. Veja o código:

Código para testar_classe.jsp:

<%@ page language="java" import="estudos.*" %>
<html>
<head>
<title>Importando classes personalizadas</title>
</head>
<body>

<form>
Selecione o Estado: <%= new Estados("MT") %>
</form>

</body>
</html>


Execute esta página e terá o resultado mostrado na imagem seguinte:


Veja como a classe é importada:

<%@ page language="java" import="estudos.*" %>

Aqui estamos importando todo o pacote estudos. Se quiser importar apenas a classe Estados, basta alterar a diretiva para:

<%@ page language="java" import="estudos.Estados" %>

Observe agora a expressão JSP usada para exibir os estados na página:

<%= new Estados("MT") %>

Tudo que fizemos aqui foi construir uma instancia da classe Estados e fornecer o valor que deverá aparecer selecionado no elemento select. Experimente construir uma instancia usando o construtor padrão (sem argumentos):

<%= new Estados() %>

Estude bastante este tópico. Será o ponto de partida para o uso de JavaBeans e construções de bibliotecas de tags personalizadas.
Este tutorial contém as seguintes seções:
  1. Introdução
  2. O que são diretivas JSP?
  3. Aprenda a usar diretivas de página
  4. Como gerar uma planilha do Excel usando JSP
  5. Criando uma página de erros para sua aplicação
  6. Usando o objeto exception para exibir informações na página de erros
  7. Aprenda a importar suas próprias classes para uma página JSP
  8. Uso da diretiva include para incluir arquivos em uma página JSP
 
 
Arquivo de Códigos - Página Inicial
Veja dicas, truques e anotações de Ruby
Obtendo os minutos a partir de um objeto da classe Time
Como obter a intersecção (elementos comuns) entre dois arrays
Aprenda a embaralhar a ordem dos elementos de um array em Ruby usando sort_by
Usando a instrução next para abandonar a iteração atual de um laço e saltar para a seguinte
Embaralhando a ordem dos elementos de um array usando o método shuffle da biblioteca Ruby Facets
Como exibir valores de variáveis dentro de strings usando a sintáxe #{...}
Como verificar a existência de um arquivo em um determinado diretório
Invertendo a ordem dos elementos em um array
Usando a instrução return para interromper a execução do código de um método
Definindo e usando métodos em Ruby
Veja dicas, truques e anotações de outras linguagens
VB.NET - Como passar um array para um método que efetuará alterações no array original
Delphi - Como obter o diretório atual usando a função GetCurrentDir()
Adobe AIR - Como obter a largura total e a largura útil de uma janela Adobe AIR
Java - Ocultar as linhas verticais de uma JTable
Java Servlets - Como redirecionar o navegador para URLs relativas
Java - Entenda a classe DefaultTableModel
Java - Removendo uma faixa de elementos de uma ArrayList
Java - Como definir um componente JLabel para um dos títulos de uma JTable
C# (CSharp) - Como remover todos os espaços de uma string
Java - Chamando o construtor de uma superclasse a partir da classe derivada

       

http://www.arquivodecodigos.net
:: Arquivo de Códigos - Softwares e Consultoria em Programação ::
Todo o conteúdo deste site, quando não devidamente observado, pertence a seus idealizadores e não
poderá ser usado para outras finalidades senão estudo e aprimoramento de técnicas de programação.
Certifique-se de ler as notas legais antes de proceder com o acesso e leitura do
conteúdo disponibilizado nestas páginas.

Fale Conosco: (62) 3261-7018 / (62) 8185-0734

Desenvolvedor Responsável: Osmar J. Silva

Página Inicial Contatos Pesquisar Mapa do Site