| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 12:25:22
|
joshh
Debugger
Membro desde: 28/03/2010 17:08:19
Mensagens: 52
Offline
|
A duvida é quanto ao facade. Atualmente quando necessito gravar em banco algo que preciso verificar regra de negocio eu chamo a classe facade e ela encapsula os managers... Nela eu pesquiso metodos pelo manager e após todo o processo eu chamo novamente o manager para gravar...
Esta certo isso? Ou devo utilizar o manager fora do facade?
Ex.:
Na interface preciso gravar um obj. Ex uma partida de futebol que preciso lançar a próxima partida após gravar o resultado da ultima partida.
Pelo managed bean é acionado o gravar, o gravar lança o resultado, se tudo deu certo o próximo passo no managed bean é chamar o facade, que irá lançar a próxima partida, no facade tenho declarado o manager, ele consulta no banco, retorna o adversario, organiza tudo e chama o manager para gravar a próxima partida...
Esta certo isso?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/08/2011 07:38:03
|
j0nny
GUJ Master
![[Avatar]](/images/avatar/2f37ce1ace06a770fab4452db0fe5c5f.png)
Membro desde: 19/09/2009 00:01:57
Mensagens: 1121
Localização: Blumenau - SC
Offline
|
Vc realmente precisa de um Facade?
Pense sempre em simplificar as coisas, e não colocar padrões apenas para colocar.
Poste sua estrutura de classes pra gente entender melhor.
|
@jntsdaniel
github.com/jonatasdaniel
---
AndOrm - Framework ORM para Android
http://github.com/jonatasdaniel/andorm |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/08/2011 12:31:15
|
joshh
Debugger
Membro desde: 28/03/2010 17:08:19
Mensagens: 52
Offline
|
Model - Onde fica as classes do BD
Manager - Gravam o objeto no banco. Não pode ir regra de negócio
Facade - Regras Negócio
TimaBean - "Trabalha com a tela"
Gravar () {
TimeFacade.gerarNovo...();
}
Exemplo acima. Por exemplo.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/08/2011 12:36:20
|
j0nny
GUJ Master
![[Avatar]](/images/avatar/2f37ce1ace06a770fab4452db0fe5c5f.png)
Membro desde: 19/09/2009 00:01:57
Mensagens: 1121
Localização: Blumenau - SC
Offline
|
Bom, não sei se esse é o uso certo do facade, mas vou mostrar como tenho usado minhas classes ultimamente.
Exemplo de Cliente:
Entidade: Cliente (mapeada pelo hibernate, tem as lógicas pertinentes ao cliente)
Service: ClienteService (QUANDO NECESSÁRIO, quando se trabalha uma lógica do cliente que envolva operações com outras entidades. Não precisando, não crie à toa)
Repositório: ClienteRepository (interface que vai conter os métodos/operações de persistência referente ao cliente, buscaPorNome(), buscaPorIdade(), salva(), busca(), etc)
Dao: ClienteDao (contém a implementação do reposítório, e é ele que fará 'contato' com o BD)
Basicamente é isso, claro que quando usada em uma aplicação web, tem ainda o controller.
Grato.
|
@jntsdaniel
github.com/jonatasdaniel
---
AndOrm - Framework ORM para Android
http://github.com/jonatasdaniel/andorm |
|
|
 |
|
|