Neste artigo, apresentarei uma tecnologia flexível e interessante baseada em JSP, que é JSTL, que significa Java Server Pages Standard Tag Library. Embora JSP tenha se tornado muito popular, JSTL ainda é muito popular em aplicativos baseados em banco de dados SQL. O desenvolvimento front-end e back-end simples e rápido ainda não é amplamente utilizado. Depois de entender o JSTL, você entenderá suas vantagens e descobrirá que ele tem sido utilizado em muitos aspectos no seu trabalho diário como programador. Presumo aqui que você já esteja familiarizado com HTML, possa entender instruções SQL básicas e os fundamentos de JSP. Porque o conteúdo a seguir envolve esse conhecimento.
JSTL é uma coleção de bibliotecas de tags padronizadas que suportam iteração, condições, análise de documentos XML, internacionalização e capacidade de interagir com bancos de dados usando SQL. Inicialmente, a especificação JSTL foi desenvolvida e aprimorada pela JSR #52 organizada pelo JCP (programa de processo da comunidade Java). "JCP assume a importante tarefa de desenvolvimento da tecnologia Java" - comenta o site oficial. Como uma organização aberta, o JCP absorve tanto membros formais quanto informais. O JCP desempenhou um importante papel de liderança na formação e desenvolvimento de especificações técnicas Java. JSTL inclui principalmente quatro partes básicas da biblioteca de tags: Core, XML, internacionalização e suporte para SQL. Como o objetivo principal deste artigo é entender rapidamente o JSTL por meio da aplicação da parte SQL, este artigo apresenta apenas algumas funções básicas das bibliotecas de tags Core e SQL.
Essa tecnologia é simples e poderosa o suficiente para competir com PHP e ColdFusion. Ela tem capacidade suficiente para expandir os campos de aplicação do Java. Esses campos incluem não apenas aplicativos da Web em grande escala e escaláveis, mas também aqueles com páginas iniciais simples. problema. Isso permite evitar as considerações usuais de integração XML e conexões de banco de dados ao construir seu site. Como acabei de mencionar, o ponto principal do JSTL é a simplicidade e facilidade de uso. Além disso, isto é, JSTL é construído em JSP, o que nos permite usar todas as tecnologias Java, das quais precisamos lembrar.
Antes de começarmos, precisamos descobrir como executar o JSTL. Como ele é baseado na tecnologia JSP, precisamos de um contêiner que possa compilar o JSP para executá - lo. apache.org/tomcat/index.html ). Como instalar este produto está além do escopo deste artigo. Não há dúvida de que este produto de software é agora muito popular e há muita documentação sobre como instalá-lo. Presume-se aqui que você instalou e configurou este contêiner com sucesso. Você só precisa instalar os arquivos necessários para executar o JSTL. Ele pode ser baixado em http://jakarta.apache.org/taglibs/doc/standard-doc/intro. .html, você não precisa realmente instalá-lo, basta incluir o arquivo .JAR no diretório WEB-INF/lib da sua aplicação
. a Para executar programas em um banco de dados que suporte SQL padrão, você precisa ter um banco de dados instalado em seu computador. Existem muitos tipos de bancos de dados, aqui escolhi o MySql. A razão pela qual o escolhi é que antes de tudo precisamos mostrar o papel do JSTL na construção de campos de aplicação simples e rápidos e, ao mesmo tempo, pode ser comparado com PHP+MySql, que sempre foi dominante neste campo; o segundo ponto é que o MySql é gratuito para download e inclui um driver JDBC para JAVA. Resumindo, para usar os exemplos a seguir, você precisa baixar um servidor MYSQL ( http://www.mysql.com/products/ . mysql/index.html ; Conector MySql /J driver JDBC http://www.mysql.com/products/connector-j/index.html e centro de controle MySql http://www.mysql.com/products/connector-; j/index.html ), este produto permite operar e gerenciar arquivos de banco de dados Mysql com muita facilidade. Após a conclusão de todos os downloads, você precisa instalar o mysql e o mysql Control Center. Além disso, o driver JDBC para mysql precisa ser colocado no diretório /Web-INF/lib em sua aplicação web.
Antes de criar o código do programa, você precisa criar e preencher as tabelas do banco de dados. Existem extensos artigos sobre este tópico e como fazê-lo está além do escopo deste artigo. Aqui eu recomendo para você o MySQL Control Center, uma ferramenta de gerenciamento visual que mencionamos acima. Você pode usá-la para criar um usuário de teste para executar o programa, banco de dados e criar uma tabela de teste e preencher uma série de registros. Em relação aos parâmetros do ambiente de configuração, como nome de login e nome do banco de dados de senha, você deve se lembrar deles e aplicá-los ao nosso código posteriormente.
Agora, você está pronto para criar seu primeiro aplicativo JSTL. Isso exige que façamos o seguinte:
Todo o código do programa de exemplo inclui dois arquivos, Hello.jsp e Continue.jsp.
O arquivo Hello.jsp permite que você insira o nome do banco de dados. , nome de login, senha de login, nome da tabela do banco de dados. Continue.jsp: Aceita as informações dos dados em Hello.jsp e se conecta ao banco de dados, e realiza uma solicitação Select para a tabela no banco de dados
Abaixo estão todos os arquivos de código deste sistema, irei explicá-los um por um. Esses códigos são bastante simples. Quanto à estrutura do código, acredito que você possa entendê-lo mesmo sem minha explicação.
1: <!-- Hello.jsp -->.
2: <html>
3: <cabeça>
4: <título>Olá</título>
5: </cabeça>
6: <corpo bgcolor="#ffffff">
7: <h1>Por favor, insira todas as informações necessárias e clique em OK.</h1>
8: <form method="post" action="Continue.jsp">
9: <br>Seu login no banco de dados:
<input type="text" name="login" size="15">
10: <br>Sua senha do banco de dados:
<input type="senha" nome="senha" tamanho="15">
11: <br>Nome do seu banco de dados:
<input type="text" name="database" size="15">
12: <br>Sua tabela de banco de dados:
<input type="text" name="table" size="15">
13: <br><br><input type="enviar" nome="enviar" valor=" OK ">
14: </formulário>
15: </corpo>
16: </html>
(Observe que os números no lado esquerdo do texto são apenas para fornecer algumas informações de marcação. Você não precisa inseri-los em seu arquivo de código.)
O texto acima é o código-fonte de todos Olá.jsp Surpreendentemente, é apenas código HTML puro, é simples assim, acho que não há necessidade de comentários. A razão pela qual incluo esses trechos de código no artigo é para demonstrar a integração de JSTL em sites HTML que precisam. para expandir rapidamente funções adicionais. Deixe-me mostrar todo o código do Continue.jsp. Depois de lê-lo, você terá alguma compreensão do JSTL.
1: <!-- Continuar.jsp -->
2: <%@ taglib prefix="c" uri=" http://java.sun.com/jstl/core " %>
3: <@ taglib prefix="sql" uri=" http://java.sun.com/jstl/sql " %>
4: <c:set var="h" valor="localhost"/>
5: <c:set var="l" value="${param.login}"/>
6: <c:set var="p" value="${param.password}"/>
7: <c:set var="d" value="${param.database}"/>
8: <c:set var="t" value="${param.table}"/>
9: <html>
10: <cabeça>
11: <título>Continuar</título>
12: </cabeça>
13: <corpo bgcolor="#ffffff">
14: <sql:setDataSource driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://${l}/${d}?user=${u}&password=${p}"/>
15: <sql:query var="resultado">
16: SELECIONE * FROM <c:out valor="${t}"/>
17: </sql:consulta>
18: <c:forEach var="row" items="${result.rowsByIndex}">
19: <c:out valor="${linha[0]}"/> <br>
20: </c:forEach>
21: </corpo>
22: </html>
(Observe que os números à esquerda do texto são apenas para fornecer algumas informações de marcação, você não precisa inseri-los em seu arquivo de código.)
Este é todo o nosso código, não é está ótimo? Agora vamos explicar a função dos códigos acima.
A linha 1 é a descrição do comentário HTML.
Linhas 2--3 Essas tags JSP são usadas para fazer referência a bibliotecas de tags externas. Para ser mais preciso, elas se referem às partes da biblioteca de tags Core e SQL da biblioteca JSTL. Definimos nomes de prefixos para eles para que possamos acessar os métodos de função na biblioteca de tags introduzida por meio desses nomes de prefixos.
Linha 4---8 Assim como Hello.jsp está realmente em execução, ele solicitará continue.jsp. Depois que Continue.jsp receber a solicitação, ele precisará obter e analisar várias variáveis de Hello.jsp. .SUA_VAR}. Na tag <c:set da 4ª linha, defina a variável ${h} como "localhost". A variável da quinta linha ${l} obterá as informações que inserimos no campo de texto de login em Hello.jsp, 6ª e 7ª, as variáveis nas 8 linhas obterão respectivamente a senha, o nome do banco de dados e o nome da tabela de dados inseridos pelo usuário em Hello.jsp.
As linhas 9 a 13 são algumas tags HTML simples que costumo usar para criar cabeçalhos de páginas HTML. Agora, a funcionalidade importante está chegando.
Na linha 14, tentamos estabelecer uma conexão com o banco de dados usando o driver mysql (com.mysql.jdbc.Driver) que obtivemos anteriormente. Na URL, especificamos os parâmetros necessários para a conexão com o banco de dados, como nome do banco de dados, nome do host, login. nome e senha de login. Conseqüentemente, podemos usar qualquer outro driver JDBC para conectar-se ao banco de dados correspondente. Se precisarmos nos conectar a outros bancos de dados SQL, basta alterar esta URL.
Linhas 15--17 Aqui executamos uma consulta Select. Preste atenção especial à linha 16. Usamos outra função JSTL <c:out para gerar o nome da tabela de dados que obtivemos. , EXCLUIR, etc. Para executar essas solicitações de consulta sem valores de retorno, você precisa usar a função JSTL <sql:update. Ele pode executá-los diretamente como <SQL:query, exceto que ao executá-lo não há necessidade de especificar uma variável de resultado para armazenar os resultados retornados pela execução da instrução.
Linhas 18--20 Agora que executamos a instrução de consulta SELECT acima, devemos exibir seus resultados de retorno. <c:forEach é uma função com função de iteração em JSTL. Ao executá-la, retornamos cada informação da linha de dados retornada para a variável ${row} através de ${result.rowsByIndex}, e então na linha 19, usamos <c: out value="${row[0]}"/> para exibir o valor na primeira coluna de dados de cada linha de dados retornada. Desde que sua tabela de dados contenha campos, você poderá acessar o valor em qualquer campo da tabela de solicitação alterando o número na variável ${row}.
As linhas 21-22 são rodapés HTML.
No processo de criação de aplicativos JSTL, você pode não ter descoberto o quão poderoso ele é, mas deve ser capaz de perceber a simplicidade e a eficiência das funções JSTL. é integrar uma coluna de notícias baseada em SQL e como é fácil integrar seu site existente.
Muito bom, nosso código é muito fácil de entender. Mesmo um programador não profissional, por exemplo, um designer pode lê-lo, entendê-lo e possivelmente fazer algumas modificações, pelo menos no layout da página.
Como mencionamos no início, para que nosso código JSTL funcione corretamente, precisamos instalar os arquivos JAR no Mysql Connector/J e, claro, JSTL. Como usamos o Tomcat, o contêiner JSP, você precisa criar sua própria pasta no diretório de arquivos do Tomcat, Webapps, e colocar seus arquivos Hello.jsp e Continue.jsp no diretório de arquivos que você criou. Você também precisa criar uma pasta chamada WEB-. INF e coloque seu arquivo de configuração Web.xml nele. O arquivo web.xml é o seguinte:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
PÚBLICO "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
" http://java.sun.com/dtd/web-app_2_3.dtd ">
<web-app />
Em seguida, precisamos criar um subdiretório chamado lib em WEB-INF e colocar os seguintes arquivos nele:
jstl.jar
saxpath.jar
padrão.jar
mysql-connector-java-3.0.9-stable-bin.jar (observe, esse nome pode mudar dependendo da sua versão do Mysql Connector/J)
Todas essas informações você pode conferir no manual JSTL ou Tomcat, se quiser entender exatamente como e por que eles funcionam, você deve ler estes manuais. No entanto, para ajudá-lo a dominar rapidamente as operações básicas do JSTL, apresentei o conhecimento relevante.
Se você estiver usando outros contêineres Jsp, precisará ler os manuais relevantes.
Tanto que gostaria de explicar mais uma coisa. Este artigo é apenas uma introdução básica à tecnologia JSTL, não um manual completo. JSTL contém muitos usos de funções ricas em recursos para ajudá-lo a concluir seu desenvolvimento Jsp de maneira simples e rápida. Recomendo que você leia alguma documentação mais detalhada sobre funções JSTL e como elas funcionam com JavaBeans. que é a plataforma de desenvolvimento que você estava esperando. Ao ler este artigo, você será capaz de criar alguns aplicativos simples de front-end e back-end baseados em bancos de dados SQL.