Como criar VOs e DAOs dinâmicos

7 respostas
acdelemos

Olá pessoal.

Estou com o seguinte problema:
Tenho que fazer uma conexão com o banco de dados e buscar por exemplo todos os dados de uma tabela, com essa informação eu tenho que criar dinamicamente em tempo de execução o VO e o DAO para esta respectiva tabela.
Teria como fazer isso, qual a melhor maneira, isso terá um impacto negativo na minha aplicação (web).
Desde já agradeço.

7 Respostas

Giulliano

Vc vai usar interfaces + castings + factorys + proxys

Agora isso pode ser feito de N maneiras…especifique melhor onde vc vai usar isso.

Alexandre_Saudate

Sempre indico o javassist para todos que fazem essa pergunta. Mas sempre pergunto , também, se não existe maneira mais fácil de fazer isso. Lembre-se de que existem maneiras de gerar um VO dinamicamente via Java, através de técnicas como a exposta aqui.

[]´s

L

Dependendo do porque você vai precisar disso, a solução pode mudar completamente.

A minha solução parte da premissa de que as tabelas são alteradas em tempo de desenvolvimento, ou seja, quando tiver em produção o schema estará estável. Por cima é assim: escreva um template do Velocity que gerem arquivos .java. Faça um processador que leia algumas strings da linha de comando e use isso pra gerar seus executáveis. Aí é só compilar e rodar.

acdelemos

obrigado pelas dicas, estou tentando me aprofundar nelas.

E para ilustrar mais a situação: toda a regra de negócio fica no banco, se um determinado cliente pedir para ser incluído/removido um número x de atributos em uma determinada tabela isso é feito na base de dados dele e assim que o sistema for aberto/atualizado essas informações já estarão disponíveis pra ele em tela e ele poderá persistir sem problema nenhum.

Acho que agora fui um pouco mais claro.
então pra que isso aconteça tenho que desenvolver tudo isso dinamicamente no java.

Abraços a todos.

Alexandre_Saudate

Se a regra de negócio for algo que envolva programação, mesmo, javassist é sua melhor opção. Caso sejam só atributos, use o tutorial de beans dinâmicos que te passei.

Mas, posso falar uma coisa? Ví escrito esse design pattern pelo q vc falou das regras ficarem no banco =P

Brincadeira, OK ?

[]´s

acdelemos

asaudate concordo com você (link), mas sou pago pra fazer então sem stress.

Alexandre_Saudate

acdelemos:
asaudate concordo com você (link), mas sou pago pra fazer então sem stress.

Tranquilo… é só que eu nunca ví o javassist ter uma aplicação prática, realmente. Então, acho que esse “design pattern” justifica o uso =P

[]´s

Criado 16 de março de 2010
Ultima resposta 16 de mar. de 2010
Respostas 7
Participantes 4