Académique Documents
Professionnel Documents
Culture Documents
Brasil
Natal/RN
2012
ii
Copyright 2012, Welbson Siqueira Costa.
Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998.
Nenhuma parte deste livro, sem prvia autorizao por escrito do autor, Welbson Siqueira Costa, poder
ser reproduzida ou transmitida sejam quais forem os meios empregados.
O autor deste livro tem trabalhado bastante para produo de material didtico que ensine a desenvolver
aplicaes comerciais de forma produtiva com o Framework JDB. Assim, os exemplos neste livro foram
produzidos para fornecer suporte didtico ao JDB. No entanto, por serem didticos, podero apresentar
necessidades de melhorias quanto aos aspectos de segurana, desempenho, estabilidade e confiabilidade.
Por isso, o autor no se responsabiliza por eventuais danos em virtude da aplicao, em escala real ou
comercial, dos conhecimentos aqui expostos ou dos conhecimentos aqui referenciados.
iii
Nota do Autor
O desenvolvimento do Framework JDB tem tomado muito do meu tempo.
Muitos dos momentos que seriam disponibilizados para estar com a famlia, parentes ou
amigos tm sido empregados no esforo desse trabalho. Sem falar nas brechas que
encontro nos perodos em que estou no meu emprego para trabalhar mais um pouco no
JDB.
Escrever este primeiro livro tornou-se um trabalho to importante quanto o
desenvolvimento do prprio Framework JDB, j que, em virtude de se tratar de uma
inovao tecnolgica, o JDB quase no tem material didtico.
Tenho enfrentado algumas dificuldades em manter o projeto de forma gratuita.
Acredito ter encontrado a soluo para esse problema atravs da venda deste primeiro
livro na forma de e-book. Sendo assim, peo a todos aqueles que se interessarem pelo
JDB que no pratiquem a pirataria. Dessa maneira, todos ns contribuiremos para o
crescimento do projeto.
Obrigado,
Welbson Siqueira Costa
iv
Prefcio
sempre uma grande satisfao analisar uma obra prestes a ser bublicada,
principalmente quando se trata de algo inovador e que traz grandes benefcios para a
comunidade cientfica e acadmica.
No tenho dvidas de que neste volume o leitor vai encontrar uma obra com
excelente qualidade tcnica e didtica. O criador o "Mestre Welbson", como
costumo cham-lo consegue espelhar em seu belo trabalho aquilo que possui em
excesso: experincia profissional, experincia acadmica, criatividade, determinao,
objetividade e clareza vocabular.
Trata-se de um texto esclarecedor que inova apresentando ao mundo
acadmico e tecnolgico o Framework JDB, projeto desenvolvido pelo prprio autor
que vem suprir carncias no mundo Java para desenvolvimento de aplicaes
desktop. Mesmo sendo admirvel, importante mencionar que este livro apenas a
primeira manifestao didtica do efetivo e inovador projeto que o Framework
JDB.
Algum que resolve disponibilizar grande parte do seu tempo para um projeto
dessa dimenso, do qual cuida com muito zelo a ponto de torn-lo primoroso, merece
nossos aplausos.
Agradecimentos
Aprendi que o mundo evolui por meio da participao de todos. Portanto,
passar por essa existncia e deixar a minha contribuio uma filosofia de vida que
adquiri atravs da boa educao e bons valores que meus pais me transmitiram.
Sendo assim, eu no poderia deixar de dedicar este livro ao Sr. Walmyk e a Sra.
Dalva.
Tambm no poderia deixar de dedic-lo a minha amada esposa, Ana
Carolina, que sempre me apoiou e, por muitas vezes, suportou minhas ausncias
enquanto estive empenhado no desenvolvimento do projeto JDB e deste livro.
vi
vii
Contedo do Livro
O livro est organizado em 14 captulos e trs apndices. No captulo dois
iniciada a construo de um sistema fictcio denominado Bibliotecrio. A construo
desse sistema continua at o captulo 11, o qual explica como distribuir o
Bibliotecrio. Os captulos que desenvolvem o sistema fictcio exploram diversos
aspectos do Framework JDB. Assim, o Bibliotecrio trabalhado como um
laboratrio de aprendizado do JDB. Os apndices contm informaes introdutrias
sobre o JDK SE, o Netbeans e o SGBD MySQL. Tais informaes abordam apenas
assuntos necessrios ao entendimento e desenvolvimento dos exemplos exibidos nos
diversos captulos do livro. Os captulos 12, 13 e 14 exploram componentes e
funcionalidades do JDB que no foram apresentadas quando do desenvolvimento do
Bibliotecrio.
A seguir apresentada breve descrio de todos os captulos do livro.
Captulo 1- Fundamentos
Nesse primeiro captulo o leitor entrar em contato com aspectos
fundamentais relacionados teoria da programao de aplicaes para interao com
bancos de dados; mas especificamente, o captulo aborda assuntos relacionados
persistncia de dados e Java.
A linguagem utilizada impessoal, pois o captulo tem um carter
dissertativo. Os captulos posteriores abandonam a impessoalidade e trabalham os
assuntos de maneira mais amigvel.
viii
captulo anterior, ao projeto do Bibliotecrio; e, desenvolve o Cadastro de Gneros
do Bibliotecrio.
Captulo 4 Implementando Relacionamento 1 x N (um para muitos)
demonstrado como implementar relacionamentos um para muitos entre
tabelas de um banco de dados relacional. O leitor conhecer os componentes
JDBLookUpComboBox e JDBLookUpField.
ix
Captulo 9 Transaes com JDB
O captulo demonstra como trabalhar com transaes de banco de dados. As
transaes so exemplificadas com a construo de dois formulrios do
Bibliotecrio, responsveis pela realizao de emprstimo e devoluo de livros.
x
Captulo 14 Classes de Entidades Persistentes
Neste captulo apresentada a classe AbstractEntity e explicado o conceito
de CEP JDB (Classe de Entidade Persistente JDB). Em seguida, construdo um
programa bastante simples para demonstrar como possvel transformar uma CEP
JDB em um componente JavaBean. Por fim, desenvolvido um programa um pouco
mais complexo com o intuito de demonstrar que componentes JavaBeans de CEP
JDB, usufruem de todos os recursos herdados do componente JDBQuery.
xi
Apndice A1
Captulo 1
Captulo 7
Apndice A2
Captulo 2
Captulo 8
Apndice A3
Captulo 3
Captulo 9
Captulo 4
Captulo 10
Captulo 5
Captulo 11
Captulo 12
Captulo 13
Captulo 14
Captulo 6
xii
Material Complementar
O material complementar disponibilizado em conjunto com o livro.
Atualizaes desse material podero ser obtidas no seguinte endereo:
http://jdbframework.com/livro/complementar
xiii
Vejamos a descrio breve de cada um desses diretrios:
xiv
xv
Sumrio
Captulo 1 Fundamentos ................................................................................................ 1
1.1
Contexto Evolutivo............................................................................................. 2
1.2
Histria de Java .................................................................................................. 3
1.3
Persistncia de dados e Java ............................................................................... 5
1.3.1
Sistemas de Bancos de Dados Relacionais.......................................................... 6
1.3.2
Sistemas de Bancos de Dados Orientados a Objetos .......................................... 8
1.3.3
Sistemas de Bancos de Dados Objeto-relacionais ou Relacionais Estendidos ...9
1.3.4
Estimativa da Evoluo do Uso dos Modelos Relacional, Objeto-relacional
e Orientado a Objetos ........................................................................................................ 9
1.3.5
Mapeamento entre Classes Persistentes e Relaes .......................................... 11
1.3.6
Subsistemas de Persistncia .............................................................................. 11
1.3.6.1 JDBC Puro........................................................................................................ 12
1.3.6.2 Classes de Entidades Persistentes..................................................................... 13
1.3.6.3 Padro DAO ..................................................................................................... 16
1.3.6.4 Subsistemas ORM (Object-relational Mapping) .............................................. 20
1.3.6.5 Comparao entre Subsistemas de Persistncia ............................................... 22
1.3.7
Framework JDB (Java Desktop Basis) .............................................................. 24
1.4
Resumo ............................................................................................................. 26
Captulo 2 Entendendo o Framework JDB .................................................................. 28
2.1
Estrutura do JDB .............................................................................................. 29
2.2
Caractersticas Necessrias do Driver JDBC ................................................... 35
2.2.1
Caractersticas Exigidas .................................................................................... 36
2.2.2
Caractersticas Desejveis ................................................................................. 36
2.3
Sistema Fictcio para Aplicao do JDB (Bibliotecrio) ................................. 36
2.4
Trabalhando com JDB sem IDE (Formulrio Cadastro de Idiomas) ............... 40
2.4.1
Construindo o Software ..................................................................................... 42
2.4.2
Compilando o Software ..................................................................................... 49
2.4.3
Rodando o Software .......................................................................................... 50
2.4.4
Fazendo Algumas Pequenas Alteraes no Software ....................................... 52
2.5
Trabalhando com JDB no Netbeans (Formulrio Cadastro de Idiomas) ......... 55
2.5.1
Fazendo Algumas Pequenas Alteraes no Software ....................................... 64
2.6
Resumo ............................................................................................................. 66
Captulo 3 Eventos e Tratamento de Erros .................................................................. 68
3.1
Iniciando a Construo do Sistema Fictcio (Bibliotecrio) ............................ 69
3.1.1
Formulrio Principal do Bibliotecrio ............................................................... 69
3.1.2
Integrao entre Projetos do Netbeans (Cadastro de Idiomas e Bibliotecrio) . 73
3.2
Formulrio Cadastro de Gneros ...................................................................... 79
3.3
Trabalhando com Eventos ................................................................................ 85
3.4
Tratando Erros de Conexo com o Banco de Dados ........................................ 88
3.5
Tratando Erros de Consultas ............................................................................ 92
xvi
3.6
Resumo ............................................................................................................. 95
xvii
9.1.1
9.1.2
9.2
xviii