| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/12/2011 07:51:10
|
xxmayconxx
JavaTeenager
![[Avatar]](/images/avatar/12649fab721fb087039af3469366dbd2.jpg)
Membro desde: 21/12/2010 19:23:18
Mensagens: 183
Offline
|
Então, se eu tenho uma classe DAO, uma página,uma Action(Struts)e uma página de saida, cada classe desa seria qual parte do mvc?
tipo, a view é a página.........
como fica?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/12/2011 10:44:58
|
erfs
What is classpath?
Membro desde: 23/03/2010 08:53:34
Mensagens: 7
Offline
|
Model - Java Bean, classe contendo um construtor sem argumentos e getters and setters, algumas pessoas podem implicar com essa definição, mas se vc achar necessário se aprofundar basta pesquisar. Num primeiro momento é o que é preciso saber.
View - o jsp
Controller - sua action
A sua DAO é chamada pelo controller, no caso pela Action.
This message was edited 1 time. Last update was at 25/12/2011 10:46:42
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/12/2011 12:21:39
|
romarcio
JWizard
![[Avatar]](/images/avatar/0dc800465c816add16e0b6d63be91f49.jpg)
Membro desde: 17/12/2008 10:05:49
Mensagens: 2434
Localização: Santa Maria/RS
Offline
|
erfs wrote:Model - Java Bean, classe contendo um construtor sem argumentos e getters and setters, algumas pessoas podem implicar com essa definição, mas se vc achar necessário se aprofundar basta pesquisar. Num primeiro momento é o que é preciso saber.
View - o jsp
Controller - sua action
A sua DAO é chamada pelo controller, no caso pela Action.
O DAO faz parte do Model também.
Para o MVC, a forma usada para persistir dados não é importante. Você pode usar arquivos (txt, xml, ...) ou banco de dados, para o MVC não faz diferença, ele não exige que seja de uma maneira específica.
Mas as lógicas e regras de negócios contidas nas classes com este fim, fazem parte do Model, neste caso citado o padrão DAO.
O Model não é formado apenas pelas classes de entidades ou pojos, mas também pelas regras de negócio que as envolvem.
|
Bacharel em Sistemas de Informação.
Oracle Certified Professional, Java SE 6 Programmer
Blog | Facebook | Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/12/2011 10:26:37
|
Eduardo Bregaida
Moderador
Membro desde: 13/11/2003 14:11:35
Mensagens: 2416
Localização: São Caetano do Sul - SP
Offline
|
romarcio wrote:
erfs wrote:Model - Java Bean, classe contendo um construtor sem argumentos e getters and setters, algumas pessoas podem implicar com essa definição, mas se vc achar necessário se aprofundar basta pesquisar. Num primeiro momento é o que é preciso saber.
View - o jsp
Controller - sua action
A sua DAO é chamada pelo controller, no caso pela Action.
O DAO faz parte do Model também.
Para o MVC, a forma usada para persistir dados não é importante. Você pode usar arquivos (txt, xml, ...) ou banco de dados, para o MVC não faz diferença, ele não exige que seja de uma maneira específica.
Mas as lógicas e regras de negócios contidas nas classes com este fim, fazem parte do Model, neste caso citado o padrão DAO.
O Model não é formado apenas pelas classes de entidades ou pojos, mas também pelas regras de negócio que as envolvem.
Faz isso não, chamar o DAO pela Action, coloca uma camada de negócio entre a DAO e a Action, assim a DAO cuida da persistencia, a Action do controle do que vem das FORMs e essa classe intermediária, poderia ser um service ou business cuida da comunicação entre a action e a DAO.
|
Blog - Java Anywhere
@bregaida - Twitter
Flickr - Fotos
Cursos de Java?
"Você poderia me dizer, por favor, qual caminho eu devo seguir?"
"Isto depende muito de onde você deseja chegar."
-Lewis Carroll, Alice no País das Maravilhas |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/12/2011 07:37:43
|
gRoOve
JavaEvangelist
![[Avatar]](/images/avatar/1c3ca1827456a5d199bccb6d74777fc2.jpg)
Membro desde: 11/03/2009 09:17:33
Mensagens: 443
Localização: Curitiba - PR
Offline
|
Eu achava que o DAO iria ligado direto ao model, por exemplo para recuperar um objeto do BD, teria que chamar um método do model e esse método do model chamaria o DAO pra buscar no BD. O correto então é ter essa camada intermediária entre control e DAO, isso? Por que não chamar direto o DAO por meio do control? Qual seria a responsabilidade desta camada intermediária?
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/12/2011 07:53:04
|
drsmachado
GUJ Expert
Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline
|
Existem algumas abordagens diferentes sobre o modelo MVC.
O padrão e puro, para o Struts 2 seria:
jsp - View
Action - Controller
DAO/Bean - Model
No Struts 1
jsp/Form - View
Action - Controller
DAO/Bean - Model
Porém, existem algumas diversificações, como o Eduardo sugeriu. É possível inserir outras camadas complementares, que tornam o tráfego de dados entre as camadas mais adequado, pois, cada camada fica responsável por uma ação específica.
Geralmente este modelo implementa
jsp/Bean - View (interação com o usuário)
Action - Controller 1 (Camada que cuida da view)
Service - Controller 2 (Camada que cuida da persistência)
DAO - Model 1 (Camada de persistência)
VO/TO/BO - Model 2 - Classes que permitem o tráfego de dados entre as camadas.
Neste modelo, os beans só vão da view até controller 1, todos os atributos são refletidos em objetos VO/BO/TO e transitarão utilizando DTO (data transfer objects).
|
Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".
Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/12/2011 08:10:44
|
douglaskd
GUJ Ranger
![[Avatar]](/images/avatar/836e08ad1864b72840258c910b729fb6.jpg)
Membro desde: 04/07/2010 00:51:49
Mensagens: 839
Localização: Campinas - SP
Offline
|
esta abordagem estaria correta ?
View -> Controler -> DAO(getLista/set...) -> (bd/xml/txt/ws)
------------------------- classes model
DAO retorna (objetos / lista de objetos) para o controller / controller manda objetos para view, -> view imprime
a view é a recepcionista, controller é o gerente, dao é o peão, bd/xml/txt/ws é a matéria prima, e classes model, são o produto que a recepcionista irá entregar/receber
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/12/2011 08:27:45
|
Eduardo Bregaida
Moderador
Membro desde: 13/11/2003 14:11:35
Mensagens: 2416
Localização: São Caetano do Sul - SP
Offline
|
drsmachado wrote:Existem algumas abordagens diferentes sobre o modelo MVC.
O padrão e puro, para o Struts 2 seria:
jsp - View
Action - Controller
DAO/Bean - Model
No Struts 1
jsp/Form - View
Action - Controller
DAO/Bean - Model
Porém, existem algumas diversificações, como o Eduardo sugeriu. É possível inserir outras camadas complementares, que tornam o tráfego de dados entre as camadas mais adequado, pois, cada camada fica responsável por uma ação específica.
Geralmente este modelo implementa
jsp/Bean - View (interação com o usuário)
Action - Controller 1 (Camada que cuida da view)
Service - Controller 2 (Camada que cuida da persistência)
DAO - Model 1 (Camada de persistência)
VO/TO/BO - Model 2 - Classes que permitem o tráfego de dados entre as camadas.
Neste modelo, os beans só vão da view até controller 1, todos os atributos são refletidos em objetos VO/BO/TO e transitarão utilizando DTO (data transfer objects).
Isso mesmo, senão você acaba misturando chamada do DAO com coisas da tela com regras de negócio, tem outros patterns para ajudar nisso.
Mas está correto dizer que
Model == Beans e DAOs
Controller == Action, Managed Beans e Controller
View == JSP, XHTML
|
Blog - Java Anywhere
@bregaida - Twitter
Flickr - Fotos
Cursos de Java?
"Você poderia me dizer, por favor, qual caminho eu devo seguir?"
"Isto depende muito de onde você deseja chegar."
-Lewis Carroll, Alice no País das Maravilhas |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/12/2011 11:46:03
|
Aldeir
Thread.start()
![[Avatar]](/images/avatar/acb7c13107010b91abb9e8dde457ce25.jpg)
Membro desde: 23/03/2010 07:31:16
Mensagens: 37
Localização: Valinhos - SP
Offline
|
Não sei se te ajuda mas vamos lá...
Baseando-se no modelo MVC fiz minha própria modelagem utilizando 5 camadas distribuídas desta forma:
Camada Bean ? Camada dos objetos de negócio, responsável pelo encapsulamento dos dados.
Camada View ? Camada de apresentação visual da aplicação
Camada BO ? Camada das regras de negócio da aplicação
Camada Control ? Camada do controle de fluxo da aplicação
Camada DAO ? Camada de persistência com o banco de dados
Fazendo assim você tem um maior controle sobre sua aplicação e também fica muito mais fácil de dar manutenção em seu código.
Para que está iniciando pode se confundir com o MVC clássico.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/01/2012 16:46:53
|
gRoOve
JavaEvangelist
![[Avatar]](/images/avatar/1c3ca1827456a5d199bccb6d74777fc2.jpg)
Membro desde: 11/03/2009 09:17:33
Mensagens: 443
Localização: Curitiba - PR
Offline
|
O que são as camadas VO/TO/BO?
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/01/2012 19:24:03
|
Eduardo Bregaida
Moderador
Membro desde: 13/11/2003 14:11:35
Mensagens: 2416
Localização: São Caetano do Sul - SP
Offline
|
gRoOve wrote:O que são as camadas VO/TO/BO?
Nesse post eu deixei um link para os mais famosos Patterns que temos: http://javawora.blogspot.com/2011/12/tutorial-vraptor.html
Está localizado no início do texto:
Aconselho antes a ler sobre Patterns como DAO, Repository, MVC, TO, PO, VO, DTO.
Também conselho esses livros: http://www.livrariasaraiva.com.br/produto/1995765/use-a-cabeca-!-padroes-de-projetos-%28design-patterns%29-2-ed-revisada/
e sobre arquitetura http://www.livrariasaraiva.com.br/produto/3705598/introducao-a-arquitetura-e-design-de-software-uma-visao-sobre-a-plataforma-java/
|
Blog - Java Anywhere
@bregaida - Twitter
Flickr - Fotos
Cursos de Java?
"Você poderia me dizer, por favor, qual caminho eu devo seguir?"
"Isto depende muito de onde você deseja chegar."
-Lewis Carroll, Alice no País das Maravilhas |
|
|
 |
|
|