Вы находитесь на странице: 1из 19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
Choose page language

NetBeans IDE
HOME / Docs & Support

NetBeans Platform

Plugins

Docs & Support

Community

Partners

Search

Criando uma aplicao Web Simples Usando um Banco de Dados MySQL


Escrito por Troy Giunipero Este documento descreve como criar uma aplicao Web simples que se conecta ao servidor de banco de dados MySQL. Tambm aborda algumas ideias e tecnologias bsicas em desenvolvimento da Web, como JavaServer Pages (JSP), JavaServer Pages Standard Tag Library (JSTL), a API JDBC (Java Database Connectivity) e duas camadas, arquitetura de servidor do cliente. Este tutorial est destinado a iniciantes com conhecimento bsico em desenvolvimento Web e que gostariam de utilizar seu conhecimento com o banco de dados MySQL. O MySQL um sistema de gerenciamento de banco de dados de cdigo-fonte aberto popular geralmente utilizado em aplicaes Web devido sua velocidade, flexibilidade e confiabilidade. O MySQL emprega a linguagem SQL, ou Structured Query Language, para acessar e processar os dados contidos em bancos de dados. Este tutorial a continuao do tutorial Conectando a um Banco de Dados MySQL e pressupe que um banco de dados MySQL denominado Java Programming Language

Training

Support
Oracle Development Tools Support Offering for NetBeans IDE

M y N e w D a t a b a s ej tenha sido criado, para o qual voc registrou uma conexo no NetBeans IDE. Os dados de tabela usados nesse tutorial
esto em ifpwafcad.sql e tambm so necessrios para este tutorial. Este arquivo SQL cria duas tabelas, S u b j e c te C o u n s e l o r , a seguir, preenche-as com os dados de amostra. Se necessrio, salve este arquivo no seu computador, a seguir, abra-o no NetBeans IDE e execute-o no banco de dados MySQL com o nome M y N e w D a t a b a s e . Contedo Planejando a Estrutura Criando um Novo Projeto Preparando a Interface da Web Preparando a Comunicao entre a Aplicao e o Banco de Dados Adicionando Lgica Dinmica Executando a Aplicao Pronta Soluo de Problemas Consulte Tambm Para seguir este tutorial, os recursos e softwares a seguir so necessrios. Software ou Recurso NetBeans IDE Java Development Kit (JDK) Servidor de banco de dados MySQL Driver MySQL Connector/J JDBC Verso Necessria Conjunto Java EE 6.8, 6.9, 7.0, 7.1 6 5.x verso 5.x

Documentation
General Java Development External Tools and Services Java GUI Applications Java EE & Java Web Development Web Services Applications NetBeans Platform (RCP) and Module Development PHP and HTML5 Applications C/C++ Applications Mobile Applications Sample Applications Demos and Screencasts

More
FAQs Contribute Documentation! Docs for Earlier Releases

GlassFish Server Open Source Edition 3.x Observaes: O pacote de download Java do NetBeans IDE permite instalar o GlassFish Server. necessrio ter o GlassFish Server para trabalhar neste tutorial. O Driver MySQL Connector/J JDBC, necessrio para a comunicao entre as plataformas Java e o protocolo do banco de dados MySQL, est includo no NetBeans IDE. Se voc precisar comparar seu projeto com uma soluo que funciona, faa download da aplicao de amostra.

Planejando a Estrutura
Aplicaes Web simples podem ser projetadas utilizando uma arquitetura de duas camadas, na qual um cliente se comunica diretamente com um servidor. Neste tutorial, uma aplicao Java Web se comunica diretamente com um banco de dados MySQL utilizando a API de Conectividade do Banco de Dados Java. Em essncia, o Driver MySQL Connector/J JDBC que permite a comunicao entre o cdigo Java entendido pelo servidor de aplicaes (o GlassFish Server) e qualquer contedo da SQL, a linguagem entendida pelo servidor do banco de dados (MySQL). A aplicao construda neste tutorial envolve a criao de duas pginas JSP. Em cada uma dessas pginas, voc utiliza HTML e CSS para implementar uma interface simples e aplica a tecnologia JSTL para executar a lgica que consulta diretamente o banco de dados e insere os dados recuperados nas duas pginas. As duas tabelas do banco de dados, S u b j e c te C o u n s e l o r , esto contidas no banco de dados MySQL, M y N e w D a t a b a s e , criado com a concluso do tutorial Conectando ao Banco de Dados MySQL. Considere o cenrio de duas camadas a seguir.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

1/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

A pgina de boas-vindas (i n d e x . j s p ) apresenta ao usurio um form HTML simples. Quando um browser requer i n d e x . j s p , o cdigo JSTL da pgina inicia uma consulta em M y N e w D a t a b a s e . Ele recupera dados da tabela do banco de dados S u b j e c te os insere na pgina, antes de eles serem enviados ao browser. Quando o usurio submete sua seleo no form HTML da pgina de boas-vindas, a submisso inicia uma solicitao para a pgina de resposta (r e s p o n s e . j s p ). Novamente, o cdigo JSTL da pgina inicia uma consulta em

M y N e w D a t a b a s e . Neste momento, ele recupera dados das tabelas S u b j e c te C o u n s e l o re os insere na pgina, permitindo que o
usurio exiba os dados com base na sua seleo quando a pgina retornada para o browser. Para implementar o cenrio descrito acima, desenvolva uma aplicao simples para uma organizao fictcia com o nome IFPWAFCAD, Associao Internacional de Ex-Lutadores Profissionais para Aconselhamento e Desenvolvimento.

index.jsp

response.jsp

Criando um Novo Projeto


Comece criando um novo projeto Java Web no IDE: 1. Escolha Arquivo > Novo Projeto (Ctrl-Shift-N; &#8984-Shift-N no Mac) no menu principal. Selecione a categoria Java Web e aplicao Web. Clique em Prximo.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

2/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

O assistente de Novo Projeto permite criar uma aplicao Web vazia em um projeto IDE padro. O projeto padro utiliza um script de construo Ant gerado pelo IDE para compilar, implantar e executar a aplicao. 2. Em Nome do Projeto, digite IFPWAFCAD. Alm disso, especifique o local para o projeto no computador. (Por default, o IDE coloca projetos em uma pastaN e t B e a n s P r o j e c t slocalizada no diretrio home). Clique em Prximo. 3. No painel Servidor e Configuraes, especifique o GlassFish Server como o servidor que ser utilizado para executar a aplicao. Observao.O GlassFish Server ser exibido no campo drop-down Servidor se voc tiver instalado a verso Java do NetBeans IDE. Como o GlassFish Server est includo no download, ele automaticamente registrado no IDE. Se voc quiser utilizar um servidor diferente para esse projeto, clique no boto Adicionar localizado ao lado do campo drop-down Servidor e registre um servidor diferente no IDE. No entanto, trabalhar com servidores que no o GlassFish Server est alm do escopo deste tutorial. 4. No campo Verso do Java EE, selecione Java EE 5.

Os projetos da Web Java EE 6 no exigem o uso do descritor de implantao w e b . x m le o modelo de projeto do NetBeans no inclui o arquivo w e b . x m lem projetos Java EE 6. No entanto, este tutorial demonstra como declarar uma fonte de dados no descritor de implantao e no conta com nenhuma funcionalidade especfico do Java EE 6, portanto, possvel definir a verso do projeto como Java EE 5. Observao. Voc pode igualmente definir a verso do projeto como Java EE 6 e, em seguida, criar um descritor de implantao

w e b . x m l . (No assistente de Novo Arquivo, selecione a categoria Web e, em seguida, Descritor de Implantao Padro).
5. Clique em Finalizar. O IDE cria um modelo de projeto para toda a aplicao e abre uma pgina JSP vazia (i n d e x . j s p ) no editor. O arquivo i n d e x . j s pserve como pgina de boas-vindas da aplicao. O novo projeto est estruturado de acordo com as diretrizes do Java BluePrints da Sun.

Preparando a Interface da Web


Comece preparando as pginas de boas-vindas (i n d e x . j s p ) e de resposta (r e s p o n s e . j s p ). A pgina de boas-vindas implementa um form HTML que utilizado para capturar dados do usurio. As duas pginas implementam uma tabela HTML para exibir os dados de forma estruturada. Nesta seo, voc tambm criar uma folha de estilo que ir melhorar a aparncia das duas pginas. Configurando a Pgina de Boas-Vindas Criando a pgina de resposta Criando uma folha de estilo

Configurando a pgina de boas-vindas


Certifique-se de que i n d e x . j s pesteja aberto no editor. Se ainda no estiver aberto, clique duas vezes no i n d e x . j s pem IFPWAFCAD

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

3/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
> Pginas Web na janela Projetos. 1. No editor, altere o texto entre as tags < t i t l e >para H o m e p a g ed aI F P W A F C A D . 2. Altere o texto entre as tags < h 1 >para: B e m v i n d oI F P W A F C A D ,aA s s o c i a oi n t e r n a c i o n a ld eE x -

L u t a d o r e sP r o f i s s i o n a i sp a r aA c o n s e l h a m e n t oeD e s e n v o l v i m e n t o ! .
3. Abra a Paleta do IDE selecionando Janela > Paleta (Ctrl-Shift-8; &#8984-Shift-8 no Mac) no menu principal. Coloque o ponteiro do mouse sobre o cone Tabela na categoria HTML e observe que o snippet de cdigo default do item exibido.

Voc pode configurar a Paleta conforme desejar: clique com o boto direito do mouse na Paleta e selecione Mostrar cones Grandes e Ocultar Nomes dos Itens para que ela seja exibida como na imagem acima. 4. Coloque o cursor em um ponto logo depois das tags < h 1 > . ( a que voc deseja implementar a nova tabela HTML.) Em seguida, na Paleta, clique duas vezes no cone Tabela. 5. Na caixa de dilogo Inserir Tabela exibida, especifique os seguintes valores e clique em OK: Linhas: 2 Colunas: 1 Tamanho da Borda: 0 O cdigo da tabela HTML gerado e adicionado a sua pgina. 6. Adicione o contedo a seguir ao cabealho da tabela e clula da primeira linha da tabela (novo contedo mostrado em negrito):

< t a b l eb o r d e r = " 0 " > < t h e a d > < t r > < t h > I F P W A F C A Do f f e r se x p e r tc o u n s e l i n gi naw i d er a n g eo ff i e l d s . < / t h > < / t r > < / t h e a d > < t b o d y > < t r > < t d > T ov i e wt h ec o n t a c td e t a i l so fa nI F P W A F C A Dc e r t i f i e df o r m e r p r o f e s s i o n a lw r e s t l e ri ny o u ra r e a ,s e l e c tas u b j e c tb e l o w : < / t d > < / t r >
7. Na linha inferior da tabela, insira um form HTML. Para isso, coloque o cursor entre o segundo par de tags < t d > , em seguida, clique duas vezes no cone do form HTML ( Ao e, em seguida, clique em OK. ) na Paleta. Na caixa de dilogo Inserir Form, digite r e s p o n s e . j s pno campo Texto da

8. Digite o contedo a seguir entre as tags < f o r m >(novo contedo mostrado em negrito):

< t r > < t d > < f o r ma c t i o n = " r e s p o n s e . j s p " > < s t r o n g > S e l e c tas u b j e c t : < / s t r o n g >

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

4/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
< / f o r m > < / t d > < / t r >
Todos os itens listados na Paleta podem ser igualmente acessados utilizando o suporte funcionalidade autocompletar cdigo do IDE. Para aproveitar a funcionalidade autocompletar cdigo ao trabalhar no editor, pressione Ctrl-Espao. As duas etapas a seguir demonstram como adicionar uma lista drop-down e o boto Submeter utilizando a funcionalidade autocompletar cdigo. 9. No editor, pressione Enter para adicionar uma linha vazia depois do contedo adicionado e pressione Ctrl-Espao para chamar o suporte funcionalidade autocompletar cdigo do IDE.

Selecione Lista Drop-down. 10. Na caixa de dilogo Inserir Lista Drop-Down exibida, digite s u b j e c t _ i dno campo de texto Nome e clique em OK. Observe que o snippet de cdigo da lista drop-down ser adicionado ao form. O nmero de opes da lista drop-down no importante no momento. Mais adiante neste tutorial, voc adicionar tags JSTL que iro gerar dinamicamente as opes com base nos dados coletados da tabela do banco de dados Subject. 11. Adicione um item de boto Submeter ( ) ao ponto bem ao lado da lista drop-down adicionada. possvel utilizar a Paleta para

fazer isso ou chamar a funcionalidade autocompletar cdigo do editor, conforme ilustrado na etapa anterior. Na caixa de dilogo Inserir Boto, digite s u b m i tnos campos de texto Nome e Label e clique em OK. 12. Para formatar seu cdigo, clique com o boto direito do mouse no editor e selecione Formatar (Alt-Shift-F; Ctrl-Shift-F no Mac). Seu cdigo ser formatado automaticamente e dever ter a aparncia semelhante ao seguinte cdigo:

< b o d y > < h 2 > W e l c o m et o< s t r o n g > I F P W A F C A D < / s t r o n g > ,t h eI n t e r n a t i o n a lF o r m e r P r o f e s s i o n a lW r e s t l e r s 'A s s o c i a t i o nf o rC o u n s e l i n ga n dD e v e l o p m e n t ! < / h 2 > < t a b l eb o r d e r = " 0 " > < t h e a d > < t r > < t h > I F P W A F C A Do f f e r se x p e r tc o u n s e l i n gi naw i d er a n g eo ff i e l d s . < / t h > < / t r > < / t h e a d > < t b o d y > < t r > < t d > T ov i e wt h ec o n t a c td e t a i l so fa nI F P W A F C A Dc e r t i f i e df o r m e r p r o f e s s i o n a lw r e s t l e ri ny o u ra r e a ,s e l e c tas u b j e c tb e l o w : < / t d > < / t r > < t r > < t d > < f o r ma c t i o n = " r e s p o n s e . j s p " > < s t r o n g > S e l e c tas u b j e c t : < / s t r o n g > < s e l e c tn a m e = " s u b j e c t _ i d " > < o p t i o n > < / o p t i o n > < / s e l e c t > < i n p u tt y p e = " s u b m i t "v a l u e = " s u b m i t "n a m e = " s u b m i t "/ > < / f o r m > < / t d > < / t r > < / t b o d y > < / t a b l e > < / b o d y >
Para exibir essa pgina em um browser, clique com o boto direito do mouse no editor e selecione Executar Arquivo (Shift-F6; FnShift-F6 no Mac). Quando voc fizer isso, a pgina JSP ser automaticamente compilada e implantada no servidor. O IDE ser aberto no browser default para exibir a pgina do seu local de implantao.

Criando a pgina de resposta


https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html 5/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
Para preparar a interface de r e s p o n s e . j s p necessrio primeiro criar o arquivo no projeto. Observe que a maioria do contedo exibido nesta pgina gerado dinamicamente com a tecnologia JSP. Portanto, nas etapas a seguir voc adicionar espaos reservados que posteriormente sero substitudos pelo cdigo JSP. 1. Clique com o boto direito do mouse no n do projeto IFPWAFCAD na janela Projetos e selecione Novo > JSP. A caixa de dilogo Novo Arquivo JSF ser aberta. 2. No campo Nome do Arquivo JSP, digite r e s p o n s e . Observe que a opo Pginas Web est atualmente selecionada no campo Localizao, o que significa que o arquivo ser criado no diretrio w e bdo projeto. Trata-se do mesmo local em que se encontra a pgina de boas-vindas i n d e x . j s p . 3. Aceite as outras configuraes default e clique em Finalizar. Um modelo, aberto no editor, ser gerado para a nova pgina

r e s p o n s e . j s p . O novo n JSP tambm ser exibido abaixo de Pginas Web na janela Projetos.

4. No editor, altere o ttulo I F P W A F C A D :{ p l a c e h o l d e r } . 5. Remova a linha < h 1 > H e l l oW o r l d ! < / h 1 >alinhe entre as tags < b o d y >e copie e cole a tabela HTML a seguir no corpo da pgina:

< t a b l eb o r d e r = " 0 " > < t h e a d > < t r > < t hc o l s p a n = " 2 " > { p l a c e h o l d e r } < / t h > < / t r > < / t h e a d > < t b o d y > < t r > < t d > < s t r o n g > D e s c r i p t i o n :< / s t r o n g > < / t d > < t d > < s p a ns t y l e = " f o n t s i z e : s m a l l e r ;f o n t s t y l e : i t a l i c ; " > { p l a c e h o l d e r } < / s p a n > < / t d > < / t r > < t r > < t d > < s t r o n g > C o u n s e l o r :< / s t r o n g > < / t d > < t d > { p l a c e h o l d e r } < b r > < s p a ns t y l e = " f o n t s i z e : s m a l l e r ;f o n t s t y l e : i t a l i c ; " > m e m b e rs i n c e :{ p l a c e h o l d e r } < / s p a n > < / t d > < / t r > < t r > < t d > < s t r o n g > C o n t a c tD e t a i l s :< / s t r o n g > < / t d > < t d > < s t r o n g > e m a i l :< / s t r o n g > < ah r e f = " m a i l t o : { p l a c e h o l d e r } " > { p l a c e h o l d e r } < / a > < b r > < s t r o n g > p h o n e :< / s t r o n g > { p l a c e h o l d e r } < / t d > < / t r > < / t b o d y > < / t a b l e >
Para exibir essa pgina em um browser, clique com o boto direito do mouse no editor e selecione Executar Arquivo (Shift-F6; FnShift-F6 no Mac). A pgina ser compilada, implantada no GlassFish Server e aberta no browser default.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

6/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

Criando uma folha de estilo


Crie uma folha de estilo simples para melhorar a view da interface da Web. Este tutorial pressupe que voc sabe como funciona as regras de estilo e como elas afetam os elementos HTML correspondentes encontrados em i n d e x . j s pe r e s p o n s e . j s p .

1. Abra o assistente de Novo Projeto pressionando o boto (

) Novo Arquivo na barra de ferramentas principal do IDE. Selecione a

categoria Web, em seguida, Folha de Estilo em Cascata e clique em Prximo. 2. Digite s t y l eem Nome do Arquivo CSS e clique em Finalizar. O IDE cria um arquivo CSS vazio e o coloca no mesmo local do projeto onde esto i n d e x . j s pe r e s p o n s e . j s p . Observe que agora ser exibido um n de s t y l e . c s sno projeto, na janela Projetos, e o arquivo ser aberto no editor. 3. No editor, adicione o contedo a seguir ao arquivo s t y l e . c s s :

b o d y{ f o n t f a m i l y :V e r d a n a ,A r i a l ,s a n s s e r i f ; f o n t s i z e :s m a l l e r ; p a d d i n g :5 0 p x ; c o l o r :# 5 5 5 ; } h 1{ t e x t a l i g n :l e f t ; l e t t e r s p a c i n g :6 p x ; f o n t s i z e :1 . 4 e m ; c o l o r :# b e 7 4 2 9 ; f o n t w e i g h t :n o r m a l ; w i d t h :4 5 0 p x ; } t a b l e{ w i d t h :5 8 0 p x ; p a d d i n g :1 0 p x ; b a c k g r o u n d c o l o r :# c 5 e 7 e 0 ; } t h{ t e x t a l i g n :l e f t ; b o r d e r b o t t o m :1 p xs o l i d ; } t d{ p a d d i n g :1 0 p x ; } a : l i n k{ c o l o r :# b e 7 4 2 9 ; f o n t w e i g h t :n o r m a l ; t e x t d e c o r a t i o n :n o n e ; } a : l i n k : h o v e r{ c o l o r :# b e 7 4 2 9 ; f o n t w e i g h t :n o r m a l ; t e x t d e c o r a t i o n :u n d e r l i n e ; }
4. Vincule a folha de estilo a i n d e x . j s pe r e s p o n s e . j s p . Nas duas pginas, adicione a linha a seguir entre as tags < h e a d > :

< l i n kr e l = " s t y l e s h e e t "t y p e = " t e x t / c s s "h r e f = " s t y l e . c s s " >


Para navegar rapidamente entre arquivos que esto abertos no editor, pressione Ctrl-Tab e, em seguida, selecione o arquivo que deseja.

Suporte CSS do NetBeans


Ao trab alhar com CSS no IDE, voc pode tirar vantagem do Construtor de Estilo CSS e da Visualizao CSS. Juntas, essas ferramentas oferecem amplo suporte para a criao de regras de estilo e elementos de exib io quando comb inadas a atrib utos de estilo. Por exemplo, coloque o cursor na regra h 1em s t y l e . c s se, em seguida, ab ra a Visualizao CSS (Janela > Outro > Visualizao CSS):

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

7/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

A visualizao CSS demonstra como um elemento renderizado em um b rowser. Ob serve tamb m que a visualizao atualizada automaticamente medida que voc faz alteraes em uma regra, oferecendo uma representao textual em tempo real dos elementos de estilo do IDE.

Preparando a Comunicao entre a Aplicao e o Banco de Dados


A maneira mais eficiente de implementar comunicao entre o servidor e o banco de dados configurar um pool de conexes de banco de dados. A criao de uma nova conexo para cada solicitao do cliente pode ser muito demorada, especialmente em aplicaes que recebem continuamente um grande nmero de solicitaes. Para remediar isso, so criadas vrias conexes que so mantidas em um pool de conexes. Todas as solicitaes de entrada que requerem acesso camada de dados da aplicao usam uma conexo j criada do pool. Igualmente, quando uma solicitao concluda, a conexo fechada, mas volta ao pool. Depois de preparar a fonte de dados e o pool de conexes do servidor, necessrio instruir a aplicao a utilizar a fonte de dados. Isso normalmente feito criando uma entrada no descritor de implantao w e b . x m lda aplicao. Finalmente, voc precisa garantir que o driver do banco de dados (Driver MySQL Connector/J JDBC) esteja acessvel ao servidor. Importante: Deste ponto em diante, voc precisa assegurar-se de ter um b anco de dados MySQL denominado

M y N e w D a t a b a s econfigurado e com dados de amostra no ifpwafcad.sql. Este arquivo SQL cria duas tab elas, S u b j e c te C o u n s e l o r , a seguir, preenche-as com os dados de amostra. Se voc ainda no tiver feito isso ou se precisar de ajuda, consulte
Conectando a um Banco de Dados MySQL antes de prosseguir com este tutorial. Alm disso, seu b anco de dados precisa ser protegido por senha para criar uma fonte de dados e trab alhar com o GlassFish Server neste tutorial. Se voc estiver utilizando a conta MySQL r o o tsem senha, voc poder definir a senha usando um prompt de linha de comandos. Este tutorial utiliza n b u s e rcomo senha de exemplo. Para definir sua senha como n b u s e r , navegue para o diretrio b i nde instalao do MySQL no prompt de linha de comandos e insira o seguinte:

s h e l l >m y s q lur o o t m y s q l >U P D A T Em y s q l . u s e rS E TP a s s w o r d=P A S S W O R D ( ' n b u s e r ' ) > W H E R EU s e r=' r o o t ' ; m y s q l >F L U S HP R I V I L E G E S ;
Para mais informaes, consulte o Manual de Referncia MySQL oficial: Proteo das Contas MySQL Iniciais.

1. Configurando uma fonte de dados JDBC e um pool de conexes 2. Fazendo referncia fonte de dados da aplicao 3. Adicionando o arquivo JAR do driver do banco de dados ao servidor

Configurando uma fonte de dados JDBC e o pool de conexes


O GlassFish Server Open Source Edition contm bibliotecas de DBCP (Database Connection Pooling - Pool de Conexes do Banco de Dados) que oferecem a funcionalidade de pool de conexes de forma transparente a voc como desenvolvedor. Para aproveitar esse recurso, necessrio configurar uma fonte de dados JDBC (Java Database Connectivity) para o servidor que a sua aplicao pode utilizar para o pool de conexes. Para obter mais informaes sobre a tecnologia JDBC, consulte Tutoriais Java: Conceitos Bsicos do JDBC. possvel configurar a fonte de dados diretamente na Console de Administrao do GlassFish Server ou, conforme descrito a seguir, voc pode declarar os recursos de que a aplicao precisa em um arquivo s u n r e s o u r c e s . x m l . Quando a aplicao implantada, o servidor l as declaraes de recursos e cria os recursos necessrios. As etapas a seguir demonstram como declarar um pool de conexes e uma fonte de dados com base no pool de conexes. O assistente de Recursos JDBC do NetBeans permite executar as duas aes.

1. Abra o assistente de Novo Projeto pressionando o boto (

) Novo Arquivo na barra de ferramentas principal do IDE. Selecione a

categoria do GlassFish Server e, em seguida, Recurso JDBC e clique em Prximo. 2. Na Etapa 2, Atributos Gerais, selecione a opo Criar Novo Pool de Conexes JDBC e, em seguida, no campo de texto Nome JNDI, digite jdbc/IFPWAFCAD.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

8/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

A fonte de dados JDBC conta com a JNDI, a Interface de Nomenclatura e Diretrio Java. A API JNDI fornece uma maneira uniforme de as aplicaes encontrarem e acessarem as fontes de dados. Para obter mais informaes, consulte Tutorial do JNDI. 3. Como opo, adicione uma descrio para a fonte de dados. Por exemplo, digite: A c c e s s e st h ed a t a b a s et h a t

p r o v i d e sd a t af o rt h eI F P W A F C A Da p p l i c a t i o n .
4. Clique em Prximo e em Prximo novamente para ignorar a etapa 3, Propriedades Adicionais. 5. Na Etapa 4, digite IfpwafcadPool para Nome do Pool de Conexes JDBC. Certifique-se de que a opo Extrair da Conexo Existente esteja selecionada e escolha j d b c : m y s q l : / / l o c a l h o s t : 3 3 0 6 / M y N e w D a t a b a s ena lista drop-down.

Observao: O assistente detecta as conexes de banco de dados que tenham sido configuradas no IDE. Portanto, neste ponto, necessrio que voc j tenha criado uma conexo ao banco de dados M y N e w D a t a b a s e . Voc pode verificar as conexes que foram criadas ao abrir a janela Servios (Ctrl-5; &8984-5 no Mac) e procurar ns de conexo ( Dados. 6. Clique em Prximo. Na Etapa 5, observe que o IDE extrai informaes da conexo de banco de dados especificada na etapa anterior e define as propriedades de nome e valor para o novo pool de conexes. ) na categoria Bancos de

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

9/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

7. Clique em Finalizar. O assistente gera um arquivo g l a s s f i s h r e s o u r c e s . x m lque contm entradas para a fonte de dados e o pool de conexes especificados. Na janela Projetos, voc pode abrir o arquivo recm-criado em Recursos do Servidor > g l a s s f i s h r e s o u r c e s . x m le observar que, nas tags < r e s o u r c e s > , foram declarados uma fonte de dados e um pool de conexes com os valores previamente especificados. Observao. No NetBeans IDE 6.9 e verses posteriores do IDE, o nome do arquivo gerado pelo IDE s u n r e s o u r c e s . x m l . Para confirmar se uma nova fonte de dados e um pool de conexes esto realmente registrados no GlassFish Server, voc pode implantar o projeto no servidor e, em seguida, localizar os recursos na janela Servios do IDE: 1. Na janela Projetos, clique com o boto direito do mouse no n do projeto IFPWAFCAD e selecione Implantar. O servidor ser iniciado caso no esteja em execuo e o projeto ser compilado e implantado nele. 2. Abra a janela Servios (Ctrl-5; &#8984-5 no Mac) e expanda os ns Servidores > GlassFish > Recursos > JDBC > Recursos JDBC e Pools de Conexes. Observe que a nova fonte de dados e o pool de conexes agora so exibidos:

Fazendo referncia fonte de dados da aplicao


necessrio fazer referncia ao recurso JDBC que acabou de configurar na aplicao Web. Para isso, voc pode criar uma entrada no descritor de implantao w e b . x m lda aplicao. Os descritores de implantao so arquivos de texto com base em XML que contm informaes que descrevem como uma aplicao deve ser implantada em um ambiente especfico. So usados normalmente, por exemplo, para especificar os parmetros de contexto da aplicao, os padres de comportamento e as configuraes de segurana, bem como mapeamentos para servlets, filtros e listeners. Observao. Se voc tiver especificado o Java EE 6 como a verso Java ao criar o projeto, ser necessrio criar o arquivo descritor de implantao selecionando Web > Descritor de Implantao Padro, no assistente de Novo Arquivo. Execute as etapas a seguir para fazer referncia fonte de dados no descritor de implantao da aplicao. 1. Na janela Projetos, expanda a pasta Arquivos de Configurao e clique duas vezes em w e b . x m l . Uma interface grfica do arquivo ser exibida na janela principal do IDE. 2. Clique na guia Referncias localizada na parte superior do editor. 3. Expanda o cabealho Referncias de Recurso e clique em Adicionar para abrir a caixa de dilogo Adicionar Referncia do Recurso. 4. Em Nome do Recurso, insira o nome do recurso que voc forneceu ao configurar a fonte de dados no servidor acima (j d b c / I F P W A F C A D ). O campo Descrio opcional, mas voc pode inserir uma descrio do recurso que seja legvel pelo usurio, por exemplo, B a n c od eD a d o sd aa p l i c a oI F P W A F C A D . Clique em OK.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

10/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

Clique em OK. O novo recurso agora ser listado abaixo do cabealho Referncias de Recursos.

5. Para verificar se o recurso foi adicionado ao arquivo w e b . x m l , clique na guia XML localizada na parte superior do editor. Observe que as tags <r e s o u r c e r e f > a seguir agora esto includas.

< r e s o u r c e r e f > < d e s c r i p t i o n > D a t a b a s ef o rI F P W A F C A Da p p l i c a t i o n < / d e s c r i p t i o n > < r e s r e f n a m e > j d b c / I F P W A F C A D < / r e s r e f n a m e > < r e s t y p e > j a v a x . s q l . d a t a S o u r c e < / r e s t y p e > < r e s a u t h > C o n t a i n e r < / r e s a u t h > < r e s s h a r i n g s c o p e > S h a r e a b l e < / r e s s h a r i n g s c o p e > < / r e s o u r c e r e f >

Adicionando o arquivo JAR do driver do banco de dados ao servidor


A adio do arquivo JAR do driver do banco de dados outra etapa vital para permitir que o servidor se comunique com o banco de dados. Normalmente, seria necessrio localizar o diretrio de instalao do driver do banco de dados e copiar o arquivo m y s q l c o n n e c t o r -

j a v a 5 . 1 . 6 b i n . j a rdo diretrio raiz do driver na pasta da biblioteca do servidor que estiver utilizando. Felizmente, o gerenciamento
de servidor do IDE capaz de detectar na implantao se o arquivo JAR foi adicionado e, caso no tenha sido, ele o adiciona automaticamente. Para demonstr-lo, abra a janela Servidores (Selecione Ferramentas > Servidores). O IDE fornece uma opo de implantao do driver JDBC. Se a opo estiver ativada, ela iniciar uma verificao para determinar se sero necessrios drivers para as aplicaes implantadas do servidor. No caso do MySQL, se o driver for necessrio e no for encontrado, o driver incorporado do IDE ser implantado no local adequado do servidor. 1. Selecione Ferramentas > Servidores para abrir a janela Servidores. Selecione o servidores do GlassFish Server no painel esquerdo. 2. No painel principal, selecione a opo Ativar Implantao do Driver JDBC.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

11/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

3. Antes de fechar a janela, anote o caminho indicado no campo de texto da pasta Domnios. Ao se conectar ao GlassFish Server no IDE, voc est se conectando, na realidade, a uma instncia do servidor de aplicaes. Cada instncia executa aplicaes em um domnio exclusivo e o campo Nome do Domnio indica o nome do domnio que o servidor est utilizando. Conforme mostrado na imagem acima, o arquivo JAR do driver dever estar localizado em d o m a i n 1 , que o domnio default criado na instalao do GlassFish Server. 4. Clique em Fechar para sair da janela Servidores. 5. No computador, v at o diretrio de instalao do GlassFish Server e entre na subpasta d o m n i o s> d o m a i n 1> l i b . . Como voc j deve ter implantando o projeto IFPWAFCAD no servidor, voc ver o arquivo m y s q l c o n n e c t o r j a v a 5 . 1 . 6 -

b i n . j a r . Se voc no vir o arquivo JAR do driver, execute a etapa a seguir.


6. Implante seu projeto no servidor. Na janela Projetos do IDE, selecione Implantar no menu de contexto do n do projeto. Voc pode ver o progresso na janela Sada do IDE (Ctrl-4; &#8984-4 no Mac). A sada indica que o driver MySQL est implantado no GlassFish Server.

Agora, se voc voltar subpasta d o m a i n 1 / l i bno computador, voc ver que o arquivo m y s q l c o n n e c t o r j a v a 5 . 1 . 6 . x -

b i n . j a rfoi adicionado automaticamente.

Adicionando Lgica Dinmica


Retornando aos espaos reservados i n d e x . j s pe r e s p o n s e . j s pque voc criou anteriormente no tutorial, voc pode implementar o cdigo JSTL que permite s pginas gerar contedo dinamicamente, ou seja, com base na entrada do usurio. Para isso, execute as trs tarefas a seguir. 1. Adicione a biblioteca JSTL ao classpath do projeto 2. Implemente cdigo JSTL

Adicionando a biblioteca JSTL ao classpath do projeto


possvel aplicar a JavaServer Pages Standard Tag Library (JSTL) para acessar e exibir dados obtidos do banco de dados. O GlassFish Server inclui a biblioteca JSTL por default. possvel verificar isso expandindo Bibliotecas do IFPWAFCAD > o n do GlassFish Server na janela Projetos e procurando o arquivo j s t l i m p l . j a r . Como as bibliotecas do GlassFish Server so, por default, adicionadas ao classpath do projeto, no necessrio executar nenhuma etapa dessa tarefa. A JSTL fornece quatro reas bsicas de funcionalidade. So elas:

c o r e : tarefas comuns e estruturais, como iteradores e condicionais para manipular controle de fluxo f m t : formatao da mensagem de internacionalizao e localizao s q l :acesso a banco de dados simples x m l : manipulao de contedo XML
Este tutorial foca no uso das bibliotecas de tags c o r ee s q l . Para obter mais informaes sobre a JSTL, consulte Tutorial do Java EE 5, Captulo 7: JavaServer Pages Standard Tag Library.

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

12/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE

Implementando o cdigo JSTL


Agora voc pode implementar o cdigo que recupera, de maneira dinmica, os dados, exibindo-os para cada pgina. As duas pginas requerem que voc implemente uma consulta SQL que utilize a fonte de dados criada anteriormente no tutorial. O IDE fornece vrios snippets de JSTL especficos do banco de dados que podem ser selecionados na Paleta (Ctrl-Shift-8; &#8984-Shift-8 no Mac).

Voc tambm pode acessar itens da Paleta pressionando Ctrl-Espao no editor. possvel filtrar os itens do banco de dados digitando "db" e, em seguida, pressionando Ctrl-Espao.

index.jsp
Para exibir dinamicamente o contedo do form no i n d e x . j s p , voc precisa acessar os n a m e s da tabela de banco de dados Subject. 1. Coloque o mouse sobre o item Relatrio do BD na Paleta.

O item Relatrio do BD utiliza a tag < s q l : q u e r y >para criar uma consulta SQL e, em seguida, utiliza a tag < c : f o r E a c h >para passar pelo r e s u l t s e t da consulta e obter os dados recuperados. 2. Coloque o cursor acima da declarao < % @ p a g e. . .% >(linha 7) e, em seguida, clique duas vezes no item Relatrio do BD na Paleta. Na caixa de dilogo que exibida, insira os seguintes detalhes: Nome da Varivel: s u b j e c t s Escopo: p a g e Fonte de Dados: j d b c / I F P W A F C A D Instruo da Consulta: S E L E C Ts u b j e c t _ i d ,n a m eF R O MS u b j e c t

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

13/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
3. Clique em OK. O contedo a seguir gerado no arquivo i n d e x . j s p . (Novo contedo mostrado em negrito.)

< % @ t a g l i bp r e f i x = " c "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / c o r e " % > < % @ t a g l i bp r e f i x = " s q l "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / s q l " % > < % D o c u m e n t :i n d e x C r e a t e do n:D e c2 2 ,2 0 0 9 ,7 : 3 9 : 4 9P M A u t h o r :n b u s e r % > < s q l : q u e r yv a r = " s u b j e c t s "d a t a S o u r c e = " j d b c / I F P W A F C A D " > S E L E C Ts u b j e c t _ i d ,n a m eF R O MS u b j e c t < / s q l : q u e r y > < t a b l eb o r d e r = " 1 " > < ! -c o l u m nh e a d e r s> < t r > < c : f o r E a c hv a r = " c o l u m n N a m e "i t e m s = " $ { s u b j e c t s . c o l u m n N a m e s } " > < t h > < c : o u tv a l u e = " $ { c o l u m n N a m e } " / > < / t h > < / c : f o r E a c h > < / t r > < ! -c o l u m nd a t a> < c : f o r E a c hv a r = " r o w "i t e m s = " $ { s u b j e c t s . r o w s B y I n d e x } " > < t r > < c : f o r E a c hv a r = " c o l u m n "i t e m s = " $ { r o w } " > < t d > < c : o u tv a l u e = " $ { c o l u m n } " / > < / t d > < / c : f o r E a c h > < / t r > < / c : f o r E a c h > < / t a b l e > < % @ p a g ec o n t e n t T y p e = " t e x t / h t m l "p a g e E n c o d i n g = " U T F 8 " % > < ! D O C T Y P EH T M LP U B L I C" / / W 3 C / / D T DH T M L4 . 0 1T r a n s i t i o n a l / / E N " " h t t p : / / w w w . w 3 . o r g / T R / h t m l 4 / l o o s e . d t d " >
Observe que o IDE adicionou automaticamente as diretivas t a g l i bnecessrias para as tags JSTL utilizadas no contedo gerado

< s q l : q u e r y >e < c : f o r E a c h > ). Uma diretiva t a g l i bdeclara que a pgina do JSP utiliza tags personalizadas (por exemplo,
JSTL), nomeia a biblioteca de tags que as define e especifica seu prefixo de tag. 4. Execute o projeto para ver como ele exibido no browser. Clique com o boto direito do mouse no n na janela Projetos e selecione Executar. Quando voc seleciona Executar, o IDE implanta o projeto no GlassFish Server, a pgina de ndice compilada em um servlet e a pgina de boas-vindas aberta no browser default. O cdigo gerado do item Relatrio de BD cria a tabela a seguir na pgina de boas-vindas.

Como podemos ver, o item Relatrio de BD permite testar rapidamente a conexo do banco de dados e permite, tambm, exibir os dados da tabela do banco de dados no browser. Isso pode ser particularmente til ao se fazer prottipos. As etapas a seguir demonstram como integrar o cdigo gerado lista drop-down HTML criada anteriormente no tutorial. 5. Examine os dados da coluna no cdigo gerado. Duas tags < c : f o r E a c h >so utilizadas, uma est aninhada dentro da outra. Isso faz com que o continer JSP (por exemplo, o GlassFish Server) execute um loop em todas as linhas da tabela e, para cada linha, ele executa um loop em todas as colunas. Dessa maneira, os dados da tabela inteira so exibidos. 6. Integre as tags < c : f o r E a c h >no form HTML, conforme a seguir. O valor de cada item se torna s u b j e c t _ i de o texto de sada se torna o n a m e , conforme registrado no banco de dados. (As alteraes so exibidas em negrito).

< f o r ma c t i o n = " r e s p o n s e . j s p " > < s t r o n g > S e l e c tas u b j e c t : < / s t r o n g > < s e l e c tn a m e = " s u b j e c t _ i d " >

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

14/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
< c : f o r E a c hv a r = " r o w "i t e m s = " $ { s u b j e c t s . r o w s B y I n d e x } " > < c : f o r E a c hv a r = " c o l u m n "i t e m s = " $ { r o w } " > < o p t i o nv a l u e = " < c : o u tv a l u e = " $ { c o l u m n } " / > " > < c : o u tv a l u e = " $ { c o l u m n } " / > < / o p t i o n > < / c : f o r E a c h > < / c : f o r E a c h > < / s e l e c t > < i n p u tt y p e = " s u b m i t "v a l u e = " s u b m i t "n a m e = " s u b m i t "/ > < / f o r m >
Uma maneira alternativa e mais simples de integrar as tags < c : f o r E a c h >ao form HTML seria a seguinte:

< f o r ma c t i o n = " r e s p o n s e . j s p " > < s t r o n g > S e l e c tas u b j e c t : < / s t r o n g > < s e l e c tn a m e = " s u b j e c t _ i d " > < c : f o r E a c hv a r = " r o w "i t e m s = " $ { s u b j e c t s . r o w s } " > < o p t i o nv a l u e = " $ { r o w . s u b j e c t _ i d } " > $ { r o w . n a m e } < / o p t i o n > < / c : f o r E a c h > < / s e l e c t > < i n p u tt y p e = " s u b m i t "v a l u e = " s u b m i t "n a m e = " s u b m i t "/ > < / f o r m >
Em qualquer um dos casos, as tags < c : f o r E a c h >executam loop em todos os valores de s u b j e c t _ i de n a m eda consulta SQL e inserem cada par nas tags < o p t i o n >HTML. Dessa maneira, a lista drop-down do form preenchida com dados. 7. Delete a tabela que foi gerada a partir do item Relatrio de BD. (A deleo mostrada a seguir como texto tachado.)

< % @ t a g l i bp r e f i x = " c "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / c o r e " % > < % @ t a g l i bp r e f i x = " s q l "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / s q l " % > < % D o c u m e n t :i n d e x C r e a t e do n:D e c2 2 ,2 0 0 9 ,7 : 3 9 : 4 9P M A u t h o r :n b u s e r % > < s q l : q u e r yv a r = " s u b j e c t s "d a t a S o u r c e = " j d b c / I F P W A F C A D " > S E L E C Ts u b j e c t _ i d ,n a m eF R O MS u b j e c t < / s q l : q u e r y > < t a b l eb o r d e r = " 1 " > < ! -c o l u m nh e a d e r s> < t r > < c : f o r E a c hv a r = " c o l u m n N a m e "i t e m s = " $ { s u b j e c t s . c o l u m n N a m e s } " > < t h > < c : o u tv a l u e = " $ { c o l u m n N a m e } " / > < / t h > < / c : f o r E a c h > < / t r > < ! -c o l u m nd a t a> < c : f o r E a c hv a r = " r o w "i t e m s = " $ { s u b j e c t s . r o w s B y I n d e x } " > < t r > < c : f o r E a c hv a r = " c o l u m n "i t e m s = " $ { r o w } " > < t d > < c : o u tv a l u e = " $ { c o l u m n } " / > < / t d > < / c : f o r E a c h > < / t r > < / c : f o r E a c h > < / t a b l e > < % @ p a g ec o n t e n t T y p e = " t e x t / h t m l "p a g e E n c o d i n g = " U T F 8 " % > < ! D O C T Y P EH T M LP U B L I C" / / W 3 C / / D T DH T M L4 . 0 1T r a n s i t i o n a l / / E N " " h t t p : / / w w w . w 3 . o r g / T R / h t m l 4 / l o o s e . d t d " >
8. Salve as alteraes (Ctrl-S; &#8984-S no Mac). 9. Atualize a pgina de boas-vindas do projeto no browser. Note que a lista drop-down do browser contm, agora, nomes de assuntos que foram recuperados do banco de dados.

Observe que no preciso reimplantar seu projeto. Por default, compilar ao salvar est ativado para seu projeto. Isso significa que, quando voc modifica e salva um arquivo, ele automaticamente compilado e implantado, e no necessrio recompilar o projeto inteiro. possvel ativar e desativar compilar ao salvar para seu projeto na categoria Compilar da janela Propriedades do projeto.

response.jsp
A pgina de resposta fornece detalhes para o conselheiro que corresponde ao assunto escolhido na pgina de boas-vindas. A consulta criada dever selecionar o registro do conselheiro cujo c o u n s e l o r _ i dcorresponda ao c o u n s e l o r _ i d f kdo registro do assunto selecionado. 1. Coloque o cursor acima da declarao < % @ p a g e. . .% >(linha 7), digite "d b " e pressione Ctrl-Espao. Selecione Consulta do BD. (Consulte a dica da funcionalidade autocompletar cdigo exibida acima.) 2. Na caixa de dilogo que exibida, insira os seguintes detalhes:

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

15/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
Nome da Varivel: c o u n s e l o r Q u e r y Escopo: p a g e Fonte de Dados: j d b c / I F P W A F C A D Instruo de Consulta: S E L E C T*F R O MS u b j e c t ,C o u n s e l o rW H E R EC o u n s e l o r . c o u n s e l o r _ i d=

S u b j e c t . c o u n s e l o r _ i d f kA N DS u b j e c t . s u b j e c t _ i d=?< s q l : p a r a m v a l u e = " $ { p a r a m . s u b j e c t _ i d } " / >

3. Clique em OK. O contedo a seguir gerado no arquivo r e s p o n s e . j s p . (Novo contedo mostrado em negrito.)

< % @ t a g l i bp r e f i x = " s q l "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / s q l " % > < % D o c u m e n t :r e s p o n s e C r e a t e do n:D e c2 2 ,2 0 0 9 ,8 : 5 2 : 5 7P M A u t h o r :n b u s e r % > < s q l : q u e r yv a r = " c o u n s e l o r Q u e r y "d a t a S o u r c e = " j d b c / I F P W A F C A D " > S E L E C T*F R O MS u b j e c t ,C o u n s e l o r W H E R EC o u n s e l o r . c o u n s e l o r _ i d=S u b j e c t . c o u n s e l o r _ i d f k A N DS u b j e c t . s u b j e c t _ i d=?< s q l : p a r a mv a l u e = " $ { p a r a m . s u b j e c t _ i d } " / > < / s q l : q u e r y > < % @ p a g ec o n t e n t T y p e = " t e x t / h t m l "p a g e E n c o d i n g = " U T F 8 " % > < ! D O C T Y P EH T M LP U B L I C" / / W 3 C / / D T DH T M L4 . 0 1T r a n s i t i o n a l / / E N " " h t t p : / / w w w . w 3 . o r g / T R / h t m l 4 / l o o s e . d t d " >
Observe que o IDE adicionou automaticamente a diretiva t a g l i bnecessria para a tag < s q l : q u e r y > . Alm disso, observe que voc utilizou uma tag < s q l : p a r a m >diretamente na consulta. Como essa consulta conta com o valor s u b j e c t _ i dque foi submetido de i n d e x . j s p , possvel extrair o valor utilizando uma instruo EL (Linguagem de Expresso) na forma de

$ { p a r a m . s u b j e c t _ i d }e, em seguida, pass-lo para a tag < s q l : p a r a m > , para que ele possa ser utilizado no local do ponto
de interrogao da SQL (? ) durante o runtime. 4. Utilize uma tag < c : s e t >para definir uma varivel que corresponda ao primeiro registro (ou seja, linha) do r e s u l t s e tretornado da consulta. (Novo contedo mostrado em negrito.)

< s q l : q u e r yv a r = " c o u n s e l o r Q u e r y "d a t a S o u r c e = " j d b c / I F P W A F C A D " > S E L E C T*F R O MS u b j e c t ,C o u n s e l o r W H E R EC o u n s e l o r . c o u n s e l o r _ i d=S u b j e c t . c o u n s e l o r _ i d f k A N DS u b j e c t . s u b j e c t _ i d=?< s q l : p a r a mv a l u e = " $ { p a r a m . s u b j e c t _ i d } " / > < / s q l : q u e r y > < c : s e tv a r = " c o u n s e l o r D e t a i l s "v a l u e = " $ { c o u n s e l o r Q u e r y . r o w s [ 0 ] } " / >
Embora o r e s u l t s e tretornado da consulta deva conter apenas um nico registro, est uma etapa necessria, pois a pgina precisa acessar valores do registro utilizando instrues EL (Linguagem de Expresso). Lembre-se que no i n d e x . j s pvoc podia acessar valores do r e s u l t s e tsimplesmente utilizando uma tag < c : f o r E a c h > . No entanto, a tag < c : f o r E a c h >opera definindo uma varivel para linhas contidas na consulta, permitindo, assim, extrair valores incluindo a varivel da linha nas instrues EL. 5. Adicione a diretiva t a g l i bpara a biblioteca c o r edo JSTL na parte superior do arquivo, para que a tag < c : s e t >seja entendida. (Novo contedo mostrado em negrito.)

< % @ t a g l i bp r e f i x = " c "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / c o r e " % >

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

16/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
< % @ t a g l i bp r e f i x = " s q l "u r i = " h t t p : / / j a v a . s u n . c o m / j s p / j s t l / s q l " % >
6. Na marcao HTML, substitua todos os espaos reservados por cdigo de instrues EL que exibem os dados contidos na varivel

c o u n s e l o r D e t a i l s . (Alteraes mostradas a seguir em negrito): < h t m l > < h e a d > < m e t ah t t p e q u i v = " C o n t e n t T y p e "c o n t e n t = " t e x t / h t m l ;c h a r s e t = U T F 8 " / > < l i n kr e l = " s t y l e s h e e t "t y p e = " t e x t / c s s "h r e f = " s t y l e . c s s " > < t i t l e > $ { c o u n s e l o r D e t a i l s . n a m e } < / t i t l e > < / h e a d > < b o d y > < t a b l e > < t r > < t hc o l s p a n = " 2 " > $ { c o u n s e l o r D e t a i l s . n a m e } < / t h > < / t r > < t r > < t d > < s t r o n g > D e s c r i p t i o n :< / s t r o n g > < / t d > < t d > < s p a ns t y l e = " f o n t s i z e : s m a l l e r ;f o n t s t y l e : i t a l i c ; " > $ { c o u n s e l o r D e t a i l s . d e s c r i p t i o n } < / s p a n > < / t d > < / t r > < t r > < t d > < s t r o n g > C o u n s e l o r :< / s t r o n g > < / t d > < t d > < s t r o n g > $ { c o u n s e l o r D e t a i l s . f i r s t _ n a m e } $ { c o u n s e l o r D e t a i l s . n i c k _ n a m e }$ { c o u n s e l o r D e t a i l s . l a s t _ n a m e } < / s t r o n g > < b r > < s p a ns t y l e = " f o n t s i z e : s m a l l e r ;f o n t s t y l e : i t a l i c ; " > < e m > m e m b e rs i n c e :$ { c o u n s e l o r D e t a i l s . m e m b e r _ s i n c e } < / e m > < / s p a n > < / t d > < / t r > < t r > < t d > < s t r o n g > C o n t a c tD e t a i l s :< / s t r o n g > < / t d > < t d > < s t r o n g > e m a i l :< / s t r o n g > < a h r e f = " m a i l t o : $ { c o u n s e l o r D e t a i l s . e m a i l } " > $ { c o u n s e l o r D e t a i l s . e m a i l } < / a > < b r > < s t r o n g > p h o n e :< / s t r o n g > $ { c o u n s e l o r D e t a i l s . t e l e p h o n e } < / t d > < / t r > < / t a b l e > < / b o d y > < / h t m l >

Executando a Aplicao Pronta


Voc, agora, concluiu a aplicao. Tente execut-lo novamente para ver como ele exibido no browser. Observe que, graas funcionalidade Compilar ao Salvar do NetBeans, voc no precisa se preocupar com a compilao ou reimplantao da aplicao. Assim, ao executar um projeto, voc ter certeza de que a implantao contm as alteraes mais recentes. Clique no boto ( ) Executar Projeto na barra de ferramentas principal. A pgina i n d e x . j s pser aberta no browser default do IDE.

Quando i n d e x . j s pfor exibido no browser, selecione um assunto na lista drop-down e clique em s u b m i t . Voc ser direcionado pgina

r e s p o n s e . j s p , mostrando os detalhes correspondentes sua seleo.

Isso conclui o tutorial Criando uma Aplicao Web Simples Usando um Banco de Dados MySQL Este documento demonstra como criar uma aplicao Web simples que se conecta a um banco de dados MySQL. Este tutorial tambm demonstrou como construir uma aplicao utilizando uma arquitetura bsica de duas camadas e utilizou vrias tecnologias, incluindo JSP, JSTL, JDBC e JNDI, como uma forma de acessar e exibir dinamicamente os dados.

Soluo de Problemas
A maioria dos problemas que ocorrem com a aplicao do tutorial so devidos a dificuldades de comunicao entre o GlassFish Server Open Source Edition e o servidor de banco de dados MySQL. Se a sua aplicao no for exibida corretamente, ou se voc estiver recebendo um erro de servidor, os testes a seguir podero ser teis. Existem recursos do banco de dados? O pool de conexes e a fonte de dados existem no servidor? O driver MySQL Connector/J est acessvel ao GlassFish Server?

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

17/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
O banco de dados protegido por senha? As propriedades do pool de conexes esto definidas corretamente?

Existem recursos do banco de dados?


Utilize a janela Servios do IDE (Ctrl-5; &#8984-5 no Mac) para garantir que o servidor MySQL esteja em execuo e que o

M y N e w D a t a b a s eesteja acessvel e contenha os dados da tabela adequados.


Para conectar-se ao servidor de banco de dados MySQL, clique com o boto direito do mouse no n Servidor MySQL e selecione Conectar. Se um n de conexo ( ) para o M y N e w D a t a b a s eno for exibido na janela Servios, voc poder criar uma conexo clicando ) e selecionando a opo Conectar Usando. Insira os detalhes

com o boto direito do mouse no n do driver MySQL ( necessrios na caixa de dilogo exibida.

Os campos fornecidos na caixa de dilogo Nova Conexo de Banco de Dados espelham a string de URL inserida na opo Mostrar URL do JDBC. Portanto, se voc souber o URL (por exemplo, j d b c : m y s q l : / / l o c a l h o s t : 3 3 0 6 / M y N e w D a t a b a s e ) voc poder col-lo no campo Mostrar URL do JDBC e os campos remanescentes da caixa de dilogo sero automaticamente preenchidos. Para garantir que as tabelas S u b j e c te C o u n s e l o rexistam e que contenham dados de amostra, expanda o n de conexo

M y N e w D a t a b a s e(
Dados.

) e localize o n do catlogo M y N e w D a t a b a s e(

). Expanda o n de catlogo para exibir as tabelas

existentes. Voc pode exibir os dados da tabela clicando com o boto direito do mouse em um n da tabela e selecionando Exibir

O pool de conexes e a fonte de dados existem no servidor?


Aps a implantao da aplicao no GlassFish Server, s u n r e s o u r c e s . x m lcontido no projeto dever instruir o servidor a criar um

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

18/19

15/08/13

Criando um aplicao Web Simples Usando um Banco de Dados MySQL - Tutorial do NetBeans IDE
recurso e um pool de conexes JDBC. possvel determinar se eles existem no n Servidores na janela Servios. Expanda o n Servidores > GlassFish Server > Recursos. Expanda Recursos JDBC para exibir a fonte de dados

j d b c / I F P W A F C A Dcriada de g l a s s f i s h r e s o u r c e s . x m l . Expanda o n Pools de Conexes para exibir o pool de conexes I f p w a f c a d P o o lcriado a partir de g l a s s f i s h r e s o u r c e s . x m l . (Isso est demonstrado acima.)

O driver MySQL Connector/J est acessvel para o GlassFish Server?


Certifique-se de que o driver MySQLConnector/J foi implantado no GlassFish Server. (Isso discutido em Adicionando o arquivo JAR do driver do banco de dados ao servidor.) Localize a pasta de instalao do GlassFish Server no computador e faa uma anlise detalhada da subpasta G l a s s F i s h

d o m a i n s / d o m a i n 1 / l i b . Aqui voc encontrar o arquivo m y s q l c o n n e c t o r j a v a 5 . 1 . 6 b i n . j a r .

O banco de dados protegido por senha?


O banco de dados precisa ser protegido por senha para que a fonte de dados do GlassFish Server funcione adequadamente neste tutorial. Se voc estiver utilizando a conta MySQL r o o tsem senha, voc poder definir a senha usando um prompt de linha de comandos. Para definir sua senha como n b u s e r , navegue para o diretrio b i nde instalao do MySQL no prompt de linha de comandos e insira o seguinte:

s h e l l >m y s q lur o o t m y s q l >U P D A T Em y s q l . u s e rS E TP a s s w o r d=P A S S W O R D ( ' n b u s e r ' ) > W H E R EU s e r=' r o o t ' ; m y s q l >F L U S HP R I V I L E G E S ;
Para mais informaes, consulte o Manual de Referncia MySQL oficial: Proteo das Contas MySQL Iniciais.

As propriedades do pool de conexes esto definidas corretamente?


Certifique-se de que o pool de conexes esteja funcionando corretamente para o servidor. 1. Abra a janela Servios (Ctrl-5; &#8984-5 no Mac) e expanda o n Servidores. 2. Clique com o boto direito do mouse no n do GlassFish Server e selecione Exibir Console de Administrao 3. Informe a d m i n /a d m i n a d m i ncomo o nome de usurio/senha default. 4. Na rvore esquerda da console, expanda o n Recursos > JDBC > Pools de Conexes > I f p w a f c a d P o o l . OS detalhes do pool de conexes I f p w a f c a d P o o lso exibidos na janela principal. 5. Clique no boto Ping. Se o pool de conexes estiver configurado adequadamente, voc ver uma mensagem "P i n gB e m -

s u c e d i d o ".

6. Se o ping falhar, clique na guia Propriedades Adicionais e verifique se os valores da propriedade listados esto corretamente definidos.

Envie-nos Seu Feedb ack

Consulte Tambm
Para obter mais informaes sobre o desenvolvimento Java Web, consulte os recursos a seguir. Artigos e Tutoriais do NetBeans Java Database Connectivity (JDBC) JavaServer Pages Standard Tag Library (JSTL) Java Naming and Directory Interface (JNDI)

SiteMap

About Us

Contact

Legal & Licences

By use of this w ebsite, you agree to the NetBeans Policies and Terms of Use. 2013, Oracle Corporation and/or its affiliates. Sponsored by

https://netbeans.org/kb/docs/web/mysql-webapp_pt_BR.html

19/19

Вам также может понравиться