OO na web... duvidas

Olá a todos!

Eu gostaria de algumas sugestões de como fazer “bonito” tais procedimentos.
Tenho 3 JavaBeans no qual eu gravo no banco (com hibernate), são eles : Texto, Tag e Tipo.
Tenho algumas operações que será padrões para os 3. As operações são :
-A1) Envia para edição (para um JSP)
-A2) Envia para inserção (para um JSP)
-A3) Lista (em um JSP)
Todas essa operações são feitas para os 3 JavaBeans antes de chamar o JSP.
Depois o JSP de Edição e Inserção via chamar outras 2 operações comuns :
-B1) Valida e edita, e se tudo tiver ok, chama A3
-B2) Valida e insere, e se tudo tiver ok, chama A3

Para mim que sempre programou proceduralmente, a maior dificuldade minha é quebrar o paradima e programar OO.
Eu pensei em criar 2 interfaces, uma para a operação A e outra para operação B, e criaria classes que implementassem A e B para cada JavaBean (ao total 6 classes TagA, TextoA, TipoA, TagB, TextoB, TipoB) e então uma outra classe que chamasse essas classes…
Está correto? Fiz me entender?

Abraços

pelo pouco que vc falou acho q sim, quando vc diz “interfaces”…

Supondo que minha interface chama Monta eu poderia(é bonito) fazer assim :

   Monta mnt = Class.forName(request.getAttribute("classe"));
   String acao = request.getAttribute("acao");
   if (acao.equals("edita"){
      mnt.edita();
   }
   else   if (acao.equals("insere"){
      mnt.insere();
   }
   else   if (acao.equals("lista"){
      mnt.lista();
   }

Essa classe receberia por Get o qual classe ele vai usar e qual acao executar

Com certeza não.

Vamos por partes.

Monta mnt = Class.forName(request.getAttribute("classe"));

Isso não compila.

Class.forName(request.getAttribute("classe"));

Isso é gambiarra, onde vai parar seu Permgen?
O que acontece se request.getAttribute(“classe”) == null?

if (acao.equals("edita"){
       mnt.edita();
    }
    else   if (acao.equals("insere"){
       mnt.insere();
    }
    else   if (acao.equals("lista"){
       mnt.lista();
    }

Isso nao compila.

acao.equals("edita")

O que acontece se acao for null?

Cara, dica…
Utilize Factories para criar seus objetos nesse caso.
Lembre-se que objetos tem estados, então utilize-os para fazer a decisão de ações como dito acima em A1, A2, A3, B1, B2.

Cara use um framework web para facilitar sua vida:

http://www.vraptor.org/pt/first-example.html

Entao, até queria utilizar framework mas não posso… tenho q ser na raça/logica

Eu vi essa palestra e achei sensacional:

http://www.tatanka.com.br/palestras/cj2005-Web+MVC+IoC+Reflection/

Pedrosa muito bom o link que você passou!
Estou tão feliz quanto o biscoito do meu avatar!

Valeu… :lol: