Padrão MVC  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
luiz_ross
GUJ Master
[Avatar]

Membro desde: 25/09/2002 16:38:34
Mensagens: 1110
Localização: Salto, SP
Offline

Alguem teria um exemplo com código bem básico sobre a utilização do padrão MVC?
Estou tendo dificuldades em aplicar esses conceitos. E mais, alguem recomenda algum livro sobre esse assunto?

Desde já muito obrigado!!!
[MSN]
Richardson
JavaTeenager
[Avatar]

Membro desde: 29/10/2002 16:54:29
Mensagens: 178
Localização: Recife/PE
Offline

Um bom livro é o JavaServer Pages Avançado da Ciência Moderna. Ele implementa os padrões de MVC Model 1 e Model 2 de uma maneira simples de entender. Um Framework que te oferece essa implementação é o Struts.

El Peregrino del Camino de Santiago

RecJUG :: Recife Java User Group
www.recjug.com.br
[WWW] [Yahoo!] [MSN] [ICQ]
luiz_ross
GUJ Master
[Avatar]

Membro desde: 25/09/2002 16:38:34
Mensagens: 1110
Localização: Salto, SP
Offline

Eu nao gostaria de aplicar esse padrão utilizando JSP e nem Servlets
e mas só Java mesmo, pois nao sou muito de programação pra web, apesar de ser um setor que esta crescendo muito.
[MSN]
Richardson
JavaTeenager
[Avatar]

Membro desde: 29/10/2002 16:54:29
Mensagens: 178
Localização: Recife/PE
Offline

Ok, é que trabalho com web! Mais o design Pattern é o mesmo, vou tentar exeplicar a idéia.

Com o MVC você tem o Model-View-Controller (Modelo-Visualização-Controle) onde o coração de tudo é o controle.

Ou seja sua classe de modelo será a sua classe com as regras de negócio.
O controlador será uma classe onde dependendo de como vc implementar, vc vai passa a o nome da classe de modelo, ou um parâmetro informando a ação.

A visão será o seu formulário.


por exemplo em um evento no formulário vc chama o método do controlador e passa uma ação para ele executar sua classe de modelo.

El Peregrino del Camino de Santiago

RecJUG :: Recife Java User Group
www.recjug.com.br
[WWW] [Yahoo!] [MSN] [ICQ]
luiz_ross
GUJ Master
[Avatar]

Membro desde: 25/09/2002 16:38:34
Mensagens: 1110
Localização: Salto, SP
Offline

Oi Richardson será que vc teria um código bem básico de exemplo pra eu poder entender melhor? É que pra quem tá no mundo java a pouco tempo é um pouco dificil pegar os conceitos apenas com teoria, isso não quer dizer que eu não tenha entendido, mas é que pra eu ter uma noção completa da implementação desse padrão um código de exemplo seria de grande ajuda. Não precisa ser nada de outro mundo, pode ser o exemplo mais básico que tem. Valew
[MSN]
Elvis.The.Pelvis
JavaGuru
[Avatar]

Membro desde: 18/12/2002 17:45:34
Mensagens: 220
Localização: Recife/PE
Offline

Não vai dar pra por código, pois meu NetBeans não tá funcionando, e não sei usar o eclipse ainda. Mas vamos ver se dá pra eu ajudar.

Vamos supor que você esteja modelando um cadastro simples de clientes.

No seu formulário, você teria os campos a serem preenchidos. No evento do clique do botão, você passaria as informações do formulário para um objeto, que servirá de meio de transporte para os dados.

Por que é que esse objeto é necessário? Porque se a sua visão mudar, o impacto na aplicação é pequeno. Esse objeto diria o seguinte: "Não me importa como o usuário vê o sistema, coloque os dados em mim, e sinalize ao controlador que eu tenho novas informações para o modelo processar".

Como o controlador é avisado? Geralmente, se usa uma "ação". Por exemplo:



OK. O seu controlador, no método facaAcao(), deverá mapear a String "cadastroCliente" para a ação correspondente. Nos modelos mais bem implementados, você usaria reflexão para descobrir e instanciar a classe de ação correspondente, mas por simplicidade vamos "marretar" com um HashMap.





OK. Você deve estar se perguntando: pra que tudo isso??? Meu form acessa o controlador, que acessa uma ação, que acessa meu modelo.

É que dessa forma, tanto sua visão como seu modelo tornam-se independentes. O controlador, juntamente com as ações, como o próprio nome indica, controlam a aplicação.

Espero que tenha sido claro. Acredite, embora isso possa parecer desnecessário, com a experiência você ve que ajuda bastante.

Se não fosse o C, até hoje estaríamos programando em BASI, PASAL e OBOL.
Elvis.The.Pelvis é Daniel Freitas
[Email] [WWW] [MSN]
luiz_ross
GUJ Master
[Avatar]

Membro desde: 25/09/2002 16:38:34
Mensagens: 1110
Localização: Salto, SP
Offline

Galera, onde posso achar material referente ao padrão MVC e exemplos prontos?
Desde já agradeço!!!
[MSN]
pedromuyala
JavaEvangelist
[Avatar]

Membro desde: 02/01/2009 19:08:04
Mensagens: 340
Offline

Mais conteúdo sobre MVC recomendo acessar este link: http://www.guj.com.br/posts/list/129277.java
Vou adicionar este tópico como referência na lista de links sobre MVC que estão na primeira postagem do link que estou recomendando.
ATENÇÃO: Não confunda MVC com CAMADAS. Uma coisa é MVC, outra coisa é Camadas!
Espero ter colaborado!

"O melhor grupo não é aquele que reúne membros perfeitos, mas aquele
onde cada um aceita os defeitos do outro, com isso se ajudam e conseguem perdão para seus próprios defeitos".
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team