Escolar Documentos
Profissional Documentos
Cultura Documentos
Criando Um Aplicação Web Simples Usando Um Banco de Dados MySQL
Criando Um Aplicação Web Simples Usando Um Banco de Dados MySQL
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
Community
Partners
Search
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
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.
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; ⌘-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.
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
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 > :
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.
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
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; ⌘-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:
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 >
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 -
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 -
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
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; ⌘-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=
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.)
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 >
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
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?
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(
existentes. Voc pode exibir os dados da tabela clicando com o boto direito do mouse em um n da tabela e selecionando Exibir
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.)
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.
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.
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
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