arquitetura mvc, javabeans e dao
TRANSCRIPT
Arquitetura MVC, JavaBeans e DAO
Leonardo da Silva Sousa
MVC
Paradigma de desenvolvimento e design.
Trs partes distintas:
Model
View
Controller
Model (Modelo)
Representa os dados do programa.
Maneja os dados e controla suas transformaes.
Classes que trabalham no armazenamento e busca de dados
Model Exemplo
Classe conta.
Diferentes modos de criar novas contas (conta comum, especial, conjunta)
Mudar informaes sobre um conta
View (Apresentao)
Representa a viso dos dados.
Apresenta os dados resultantes do model para o usurio.
Classes de interface grfica
View Exemplo
Pgina web de uma aplicao.
Pginas de login personalizadas.
Um administrador pode visualizar uma pgina de login que outro usurio no v.
Controller (Controlador)
Controlador da aplicao.
Responde as ordens executadas pelo usurio.
Gerencia o trfego entre as views e os modelos.
Controller Exemplo
Recebe um pedido para exibir uma lista de clientes.
Solicita ao modelo a lista de clientes.
Entrega para uma nova view a lista a ser exibida..
Viso Geral
MVC Benefcios
Padro muito aceito no desenvolvimento de aplicaes Java.
Aplicaes para a Web.
Facilidade na manuteno e reutilizao de cdigo.
MVC Benefcios
Separao lgica da aplicao.
Modelo representa os componentes.
Apresentao exibe os dados.
Controlador gerencia a aplicao
Aplicaes Web
Muito comum embutir a lgica de negcios com o resultado final.
Pginas HTML com cdigos do servidor na mesma pgina.
Dois modelos para desenvolvimento.
Model 1
Conhecida como page-centric.
Construir uma aplicao como um conjunto de pginas JSP.
Facilidade de construo.
Model 1
Model 2
Aplicaes complexas.
Lgica de negcio detalhadas e lgica de exibio significativamente grande.
Bem mais prximo do modelo MVC.
Model 2
JavaBeans
Componentes de softwares reutilizveis.
POJO
Plain Old Java Objects (Os Singelos Clssicos Objetos Java)
Segue uma conveno particular.
JavaBeans
Implementa a interface Serializable;
Possui um construtor sem argumentos;
Mtodos "get" e "set";
Pode conter qualquer mtodo de tratamento de eventos.
Modelo DAO
Data Acess Object
Padro de desenvolvimento para acesso ao Bando de Dados.
Presente no Model do MVC.
Modelo DAO
Interface independente para persistir objetos.
Todas funcionalidades de acesso aos dados e trabalho em um s lugar.
Em geral um DAO para cada classe de objetos que ser persistido na base de dados.
Modelo DAO
Responsvel por implementar os mtodos CRUD:
Create
Retrieve
Update
Delete
Clique para editar o formato do texto do ttuloClique para editar o ttulo mestre
Clique para editar o formato do texto do ttuloClique para editar o ttulo mestre
Clique para editar o formato do texto da estrutura de tpicos2. Nvel da estrutura de tpicos3. Nvel da estrutura de tpicos4. Nvel da estrutura de tpicos5. Nvel da estrutura de tpicos6. Nvel da estrutura de tpicos
7. Nvel da estrutura de tpicosClique para editar o texto mestreSegundo nvel
Terceiro nvel
Quarto nvel
Quinto nvel