Você está aqui: JSP (Java Server Pages) ::: Dicas de Estudo e Anotações ::: Passos Iniciais |
Aprenda a importar suas próprias classes para uma página JSPQuantidade de visualizações: 35 vezes |
Vimos em dicas 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"> "; for(int i = 0; i < estados.length; i++){ if(estados[i].equals(selecionado)) html += " <option value="" + estados[i] + "" selected>" + estados[i] + "</option> "; else html += " <option value="" + estados[i] + "">" + estados[i] + "</option> "; } html += "</select>"; return html; } } 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. Visite www.recomende.com 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"}; 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; } public Estados(){ selecionado = estados[0]; } String html = "<select name="estado"> "; 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 } if(estados[i].equals(selecionado)) html += " <option value="" + estados[i] + "" selected>" + estados[i] + "</option> "; else html += " <option value="" + estados[i] + "">" + estados[i] + "</option> "; 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> 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. |
Link para compartilhar na Internet ou com seus amigos: |
Vamos testar seus conhecimentos em |
Cisalhamento e detalhamento de vigas Conforme a NBR 6118 (ABNT, 2014), a armadura transversal mínima deve ser colocada nas vigas de modo a garantir a estabilidade das estruturas, mesmo na eventualidade de serem aplicados carregamentos não previstos no cálculo, evitando a ruptura abrupta logo após o surgimento das primeiras fissuras inclinadas. Nesse contexto, qual a armadura transversal mínima necessária por metro de viga, tendo em vista que ela tem seção de 30 x 80cm e altura útil de 77cm? Adote concreto C35 e aço CA-50. A) 2,43cm2/m. B) 2,84cm2/m. C) 3,12cm2/m. D) 3,54cm2/m. E) 3,85cm2/m. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Densidade de um fluido Um fluido encontra-se em um recipiente com volume de 300L. Sabendo que a massa desse fluido é de 2kg, qual a sua densidade em kg/m3? A) 0,67kg/m3. B) 6,67kg/m3. C) 0,15kg/m3. D) 150kg/m3. E) 151,5kg/m3. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?valores = [5, 2, 7, 1, 4, 9, 6] contador = len(valores) while contador >= 0: print(valores[contador], end=" ") contador = contador - 2 A) Erro IndexError: list index out of range na linha 4 B) 6 4 7 5 C) Erro SyntaxError: invalid syntax na linha 5 D) 2 1 9 E) 1 4 9 6 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?# cria uma string palavra = "BRASIL" print("A letra é: {0}".format(palavra(2))) A) A letra é: A B) Um erro TypeError: 'str' object is not callable C) A letra é: R D) Um erro SyntaxError: EOL while scanning string literal E) A letra é: {0} Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Qual evento JavaScript ocorre quando o usuário clica em um elemento HTML? A) onchange B) onmouseover C) onmouseclick D) onclick Verificar Resposta Estudar Cards Todas as Questões |
Veja mais Dicas e truques de JSP (Java Server Pages) |
Dicas e truques de outras linguagens |
Delphi - Como verificar se um arquivo existe usando a função FileExists() da unit SysUtils do Delphi Java - Apostila de Java - Como retornar uma substring em Java usando o método substring() da classe String |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |