Baixe Aplicações Web com NetBeans IDE: Conexão JSP com MySQL e Inserção de Dados e outras Notas de estudo em PDF para Programação para Java, somente na Docsity!
Conteúdo
- TRABALHANDO COM TOMCAT 5.5
- Adicionando na IDE o Tomcat 5.5
- Acessando o administrador na IDE........................................................................................
- Configurando Pool de Conexões no Tomcat 5.5 pelo Admin...............................................
- Utilizando JNDI no arquivo persistence.xml.........................................................................
- Listagem 1. Alteração do arquivo persistence.xml
- Listagem 2. A classe JPAToplinkSessionCustomizationUtil
- APLICAÇÕES WEB COM ACESSO A DADOS SEM PADRÃO.............................................
- Desenvolvendo via JDBC sem padrões
- Criando o projeto
- Conectando sua página JSP ao banco de dados
- Listagem 1. Alterações na página index.jsp...........................................................................
- Listagem 2. Alterações na página formInserindoDados.jsp
- Listagem 3. Alterações na página inserindoDados.jsp
- Entendendo os principais Statements
- Explorando a interface PreparedStatement
- A biblioteca de tags SQL do JSTL
- Listagem 4. Alterações na página inserindoDados.jsp
- STRUTS FRAMEWORK
- A origem do Struts Framework
- Seu primeiro projeto com Struts
- As camadas de Struts
- Listagem 1. Alterações na classe NomeForm
- Listagem 2. Alterações na classe ControleAction
- Listagem 3. Alterações na classe MeuBeanModelo...............................................................
- Listagem 4. Alterações na classe Constante...........................................................................
- Listagem 5. Alterações na página welcomeStruts
- Listagem 6. Alterações na página sucesso.jsp........................................................................
- As tags do Struts.......................................................................................................................
- Utilizando Struts para acessar banco de dados
- Listagem 7. O JavaBean Autor
- Listagem 8. A classe ConnectionFactory
- Listagem 9. A interface DAO
- Listagem 10. A classe implementada AutorDAOImp
- Listagem 11. A classe AutoresActionForm
- Listagem 12. A classe AutoresAction
- Listagem 13. O resultado final configurado em struts-config.xml
- Listagem 14. A página welcomeStruts.jsp
- Listagem 15. A página index.jsp
- Listagem 16. A classe EditarAutoresForm
- Listagem 17. A classe EditarAutoresAction
- Listagem 18. Alterações no arquivo struts-config.xml
- Listagem 19. Alterações no arquivo struts-config.xml
- Listagem 20. Alterações no arquivo struts-config.xml
- Listagem 21. A página welcomeStruts.jsp
- DESENVOLVENDO RELATÓRIOS COM NETBEANS IDE
- O JasperReports
- O iReport para o NetBeans
- Desenvolvendo relatórios com NetBeans
- Listagem 2 – Alteração do arquivo index.jsp
- Listagem 3 – Alteração da query usada no relatório
- Listagem 4 – O Servlet Relatorio
- Listagem 5 – Chamando o Servlet por mostrarAutoresCads.jsp
- ESTUDO DE CASO COMPLETO COM VISUAL WEB JSF
- Adicionando novas características ao administrador
- As entidades e seus relacionamentos
- Listagem 1. Script para criação das tabelas do projeto.......................................................
- Adicionando novas páginas do administrador
- Listagem 2. O bean Editora
- Listagem 3. O código do link Excluir do componente Table da página..............................
- Listagem 4. O código do link Atualizar do componente Table da página
- Listagem 5. O código do botão Salvar do formulário da página
- Listagem 6. O código do método Callback prerender() da página......................................
- A página de criar publicações
- Listagem 7. O código do botão btPublicar do formulário da página
- Listagem 8. Alterações do código da página
- Listagem 9. Alteração em faces-config.xml para a página Publicar
- A página de publicações
- Vinculando o livro a seus autores
- Listagem 10. Alteração na classe RequestBean1
- Listagem 11. Código do link Adicionar................................................................................
- Listagem 12. Código do botão Adicionar ao Livro
- A página de autores publicados
- Listagem 13. Navegação da página LivroAutor para AutoresPublicados........................
- Alterando o menu
- Criando o relacionamento entre as páginas
- Listagem 13. Arquivo faces-config.xml
- UTILIZANDO JPA ESTUDO DE CASO COMPLETO COM VISUAL WEB JSF, SPRING E HIBERNATE
- As características da aplicação
- O Projeto
- As entidades e seus relacionamentos
- As entidades POJO
- Listagem 1. O código da entidade Usuario
- Listagem 2. O código da entidade Livro
- Listagem 3. O código da entidade Autor..............................................................................
- Listagem 4. O código da entidade Editora...........................................................................
- Listagem 5. O código da entidade Publicacao
- Utilizando o DAO genérico para criar outros
- Listagem 6. A interface BaseDao alterada
- Listagem 7. A classe BaseDaoImp alterada
- Listagem 8. A interface EditoraDao
- Listagem 9. A classe EditoraDaoImp
- Listagem 10. A interface LivroDao
- Listagem 11. A classe LivroDaoImp.....................................................................................
- Listagem 12. A interface PublicacaoDao
- Listagem 13. A classe PublicacaoDaoImp............................................................................
- Listagem 14. A interface UsuarioDao
- Listagem 15. A classe UsuarioDaoImp.................................................................................
- Listagem 16. A classe AutorDao
- Listagem 17. A classe AutorDaoImp
- Configurando o Spring
- Listagem 18. Configuração do arquivo applicationContext.xml.
- Listagem 19. Configurando o Spring Framework em web.xml.........................................
- Criando um teste unitário
- Listagem 20. Teste unitário usando o Spring Framework
- Controlando o acesso
- Listagem 21. Métodos adicionais da classe AutorController
- Listagem 22. O código da classe UsuarioController
- Listagem 23. O código da classe EditoraController............................................................
- Listagem 24. O código da classe LivroController
- Listagem 25. O código da classe PublicacaoController
- Integrando o Visual Web JSF ao Spring
- Listagem 26. Alterações no arquivo faces-config.xml.........................................................
- Acessando o Facade pelo Visual Web JSF
- Listagem 27. Alterações na classe SessionBean1
- Os arquivos persistence.xml e log4j.properties
- As páginas da aplicação
- Montando sua aplicação para utilizar Spring e Hibernate com JPA................................
- A criação do cadastro de livros
- Listagem 28. Criação do método getLivroController()
- Listagem 29. Alterações no método prerender()
- Listagem 30. Alterações no método do link Excluir
- Listagem 31. Alterações no método do link Editar
- Listagem 32. Alterações no método do botão Salvar
- As demais páginas administrativas de cadastro simples
- Acessando a área administrativa
- Listagem 33. Criação do método getUsuarioController()
- Listagem 34. Alterações no método prerender()
- Listagem 35. Alterações no método do botão Logar
- A página de publicação
- Listagem 36. Alterações no método init() da classe SessionBean1
- Listagem 37. O código do botão btPublicar do formulário da página
- Listagem 38. Alterações do código da página
- Listagem 39. Alteração em faces-config.xml para a página Publicar
- A página de publicações
- Listagem 40. O bean PublicacoesBean
- Listagem 41. Alterações na classe SessionBean1
- Listagem 42. Alterações do método prerender()
- Listagem 43. Alterações em Publicacoes.java
- Adicionando autores a livros.................................................................................................
- Listagem 44. Alteração na classe SessionBean1
- Listagem 45. Alterações no método prerender()
- Listagem 46. Declaração do atributo autorOptions - Listagem 47. Chamando a classe AutorController - Listagem 48. Código do link Adicionar............................................................................... - Listagem 49. Código do botão Adicionar ao Livro - Listagem 50. Código de getLivroController() - A página de autores publicados - Listagem 51. Código de AutoresLivroBean - Listagem 52. Trecho do código de SessionBean1 - Listagem 53. Alterações do método prerender() - Pesquisando livros na página principal - Listagem 54. Alterações na classe SessionBean1 - Listagem 55. Código no botão Buscar de topo.jspf - Listagem 56 – Chamada de LivroController na classe Pesquisado - Listagem 57 – Código do método prerender() na classe Pesquisado................................. - Listagem 58 – Criação do array livros na classe Pesquisado - Listagem 59 – Criação do array livros na classe Pesquisado - A página de contato................................................................................................................ - A navegação de páginas - Listagem 60 – Navegação das páginas em faces-config.xml - Alterando os menus................................................................................................................ - Listagem 61. Os métodos dos links do menu Principal - Listagem 62. Os métodos dos links do menu Administrativo - Configurando um Pool para a conexão - Trabalhando com cache de objetos - Listagem 63. O arquivo persistence.xml - Listagem 64. O arquivo persistence.xml completo.............................................................. - Listagem 65. O arquivo ehcache.xml completo - Listagem 66. A entidade Autor - Listagem 67. A entidade Livro - Listagem 68. A entidade Editora - Listagem 69. A entidade Publicacao..................................................................................... - Listagem 70. A entidade Usuario
- O MYSQL
- O que é um banco de dados relacional?
- Instalando o banco de dados
- Instalando no Windows
- Instalando o MySQL no Linux
- Acessando o banco de dados MySQL...................................................................................
- Comandos essenciais para o uso do MySQL
- Alterando tabelas existentes
- Utilizando índices
- Tipos de tabelas
- Tipo de dados..............................................................................................................................
- Modificadores AUTO_INCREMENT, UNSIGNED e ZEROFILL
- Tipos de caractere ou de dados de string
- Tipos variados
- Tipos de data e hora (DATE/TIME)
- Modificadores adicionais de coluna
- Sintaxe básica da SQL
- Funções que trabalham com a instrução SELECT.................................................................
- Comando UPDATE
- Comando DELETE
- Trabalhando com Junções
- Criando uma junção com INNER JOIN
- Chaves variadas do MySQL
- O que é uma chave?
- Como as chaves funcionam
- Benefícios de usar uma chave
- Suporte de chaves do MySQL
- Chaves primárias (Primary Key)
- Chaves estrangeiras (Foreign Key)
- Excluindo uma chave estrangeira
- Administrando o MySQL
- Entendendo o sistema de privilégios do MySQL
- Configurando usuários
- Confirmando o novo usuário
- Revogando privilégios
- Obtendo informações com SHOW
Sobre o conteúdo destes Capítulos
Embora o livro aborde uma boa parte da técnica necessária para o desenvolvimento com aplicações Web envolvendo o NetBeans IDE, alguns iniciantes sentirão necessidade de um conteúdo mais aprofundado, com exemplos mais complexos e completos, finalizando assim seus estudos.
Esta é a idéia destes capítulos extras, que juntos formam um novo livro, mas com seu conteúdo atrelado ao livro impresso. Isso significa, em prática, que parte do abordado aqui, possui suas explicações técnicas no livro impresso. Em outras partes, códigos são apresentados apenas com pequenos trechos, necessitando do livro para completá-los e conseqüentemente entendê-los.
Com tudo isso, quem ganha é você, caro leitor, que possui em suas mãos um poderoso brinde, que está sendo dado para melhorar e ampliar seus exemplos, sem custo a mais por isso.
Espero que goste deste brinde e que seja muito útil no seu desenvolvimento sobre aplicações escritas em Java para a Web.
Bons códigos,
Edson Gonçalves Autor do livro Desenvolvendo Aplicações Web com NetBeans IDE 6
Figura 2 – Configuração do local de instalação e informações da conta administradora
Atenção: Uma adição como esta não habilita automaticamente a opção do Monitor HTTP. Será necessário ir até as propriedades e marcar Enable HTTP Monitor.
Figura 3 – Tomcat 5.5 adicionado no NetBeans
Acessando o administrador na IDE
Para acessar o administrador do Tomcat, a aplicação batizada de Admin, clique novamente com o direito do mouse sobre o servidor e selecione no menu de contexto o item View Admin Console. Uma janela do browser se abrirá e você terá uma tela similar a Figura 4:
Observação: O Administration Tool não vem instalado por padrão no Tomcat 5.5. Será necessário baixá-lo e instalá-lo para então utilizar. 1
Figura 4 – Tela inicial de login do Tomcat Web Server Administration Tool
O login e a senha desta aplicação estão em um arquivo chamado de tomcat-users.xml. Este arquivo está no diretório da sua instalação, em: conf. Ao abrir o arquivo, um simples XML, você encontrará a seguinte linha:
Caso desejar, pode alterar a senha, que está no atributo password. O usuário se encontra em username. Após alterar, você precisará informar a IDE o novo login e senha. Para isso, clique com o direito do mouse novamente sobre o Tomcat, na janela Services. Selecione no menu de contexto o item Properties. Na caixa de diálogo Servers você seleciona o Tomcat 5.5, caso não esteja selecionado em Servers e em Username você adiciona o novo usuário e a senha em Password. Perceba também que é neste local em que você pode alterar as portas do Tomcat. O padrão de uma instalação do Tomcat, fora da IDE é 8080. Após alterar basta clicar no botão Close para confirmar a caixa de diálogo.
(^1) Recomendo a leitura do livro Tomcat – Guia Rápido do Administrador – Ciência Moderna - 2006
No Frame direito, você verá uma caixa de seleção em Host Actions. Clique em Available Actions e selecione Delete Existing Contexts.
Figura 7 – Excluindo um contexto existente
O frame exibirá Delete This Context. Selecione o contexto que deseja excluir, em Delete, simplesmente checando o item e clique no botão Save.
Figura 8 – Selecionando o contexto que será removido
Para refletir as alterações feitas no Tomcat, através do NetBeans, volte a janela Services e com o direito do mouse sobre o Tomcat 5.5 selecione o item Refresh no menu de contexto. Você também pode clicar com o direito do mouse sobre Web Applications onde apenas um item, o Refresh, aparecerá.
Figura 9 – Refletindo as alterações no NetBeans
Configurando Pool de Conexões no Tomcat 5.5 pelo Admin
Na janela Services, com o Container Servlet Tomcat 5.5 em execução, clique com o direito do mouse e selecione o item View Admin Console. Entre com seu login e senha na área administrativa. Dentro do administrador, no frame esquerdo, expanda o nó Resources e clique em Data Sources. Em Data Source Actions, no menu drop down, selecione Create New Data Source.
Figura 10 – Criando um novo Data Source pelo Admin do Tomcat 5.
Preencha os campos de Data Source como mostrado na Figura 11 a seguir e salve as alterações clicando no botão Save.
java:comp/env/jdbc/livraria
Nos elemento **** você tem dois elementos **** , onde um contém uma chamada a uma classe que persistirá a sessão. Dentro do pacote br.com.integrator.util , crie uma classe, que se chamará de JPAToplinkSessionCustomizationUtil. Adicione o código da Listagem 2 a seguir nesta classe:
Listagem 2. A classe JPAToplinkSessionCustomizationUtil
... public class JPAToplinkSessionCustomizationUtil implements SessionCustomizer {
public void customize(Session session) throws Exception{ JNDIConnector connector = (JNDIConnector)session.getLogin( ).getConnector( ); connector.setLookupType(JNDIConnector.STRING_LOOKUP); }
}
Fixe as importações com Ctrl + Shift + I. Não se esqueça de adicionar o Resource References do seu JNDI no deployment descriptor.
Capítulo Extra 2
Aplicações Web com acesso a dados sem padrão
Este capítulo foi escrito para desenvolvedores iniciantes que estão começando com aplicações Web em Java e desejam aprender o básico antes de iniciar o trabalho com padrões de desenvolvimento como MVC e DAO.
Desenvolvendo via JDBC sem padrões
Para começar, uma breve revisão de como adicionar uma biblioteca JDBC, caso você não tenha a do banco de dados que vai utilizar. Para o exemplo, será utilizado o MySQL, por estar sendo abordado ao longo do livro.
Criando o projeto
Crie um novo projeto no NetBeans e o chame de TrabComJDBCeMySQL. No seu projeto gerado, clique com o direito do mouse sobre o item Libraries. No menu de contexto, você possui as opções para escolher:
- Add Library - Adiciona uma biblioteca configurada no NetBeans IDE.
- Add JAR/Folder - Adicione um JAR ou Diretório em apenas um projeto da IDE.
- Add Project – Adiciona um projeto e conseqüentemente suas dependências.
Figura 1 – Adicionando uma nova biblioteca
Selecione a opção Add Library no menu de contexto. Na caixa de diálogo Add Library clique no botão Manage Libraries.
Voltando a caixa de diálogo Library Manager, com a biblioteca MySQL criada, selecionada em Libraries, clique no botão Add JAR/Folder e selecione a biblioteca JDBC do MySQL e depois confirme a caixa de diálogo.
Figura 4 – Adição do arquivo JAR
Selecione em Add Library a biblioteca MySQL adicionada e clique no botão Add Library.
Figura 5 – Adicionando a biblioteca ao projeto
Voltando em seu projeto, você deverá ver a biblioteca MySQL adicionada em seu projeto.
Figura 6 – Biblioteca JDBC do MySQL adicionada ao projeto
Conectando sua página JSP ao banco de dados
Para que você entenda como funciona a conexão e a leitura de dados de um banco de dados, altere a página index.jsp adicionando os códigos da Listagem 1 a seguir, para trabalhar com o MySQL.
Listagem 1. Alterações na página index.jsp
<%@ page contentType="text/html"%> <%@ page pageEncoding="ISO-8859-1" import="java.sql.*" %>
Conectando sua aplicação JSP ao MySQL via JDBC
IDTítulo
<% Connection conn = null; Statement st = null; ResultSet rs = null; try { Class.forName("com.mysql.jdbc.Driver").newInstance( ); conn = DriverManager.getConnection( "jdbc:mysql://localhost/livraria", "edson","integrator"); st = conn.createStatement( ); rs = st.executeQuery("select id, titulo from livros"); while(rs.next( )) { %>