Access Keys:
Skip to content (Access Key - 0)
Please disable the Snip-Snap compatibility plugin

Framework DTOptimizer disponibilizado

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Os bons e velhos DTOs

Ja teve que criar e preencher DTO's (ou VO's, ou seja la como voce chama) nos seus sistemas Java EE e outros? Se sim, este post vai lhe ajudar.
Muitas pesosas usam o classicou "set from get" pra prencher os Data Transfer Objects (DTO) a partir dos Entity Beans e envia-los para a camada cliente. Outros usam a classica classe BeanUtil da Apache. Mas em qualquer caso, quando os DTO's sao mais complexos, ou quando o grafo de entidades no modelo de dominio eh muito grande, a coisa comeca ficar chata...

O DTOptimizer

Pensando nissso, em 2005 quando eu estava literalmente na cama do hospital no processo do meu transplante de medula, com a ajuda da minha namo, montei o DTOptimizer.
O DTOptimizer eh mini-framework configuravel para preenchimento de DTOs. A apresentacao http://jboss.lm2.com.br/svn/public/dtoptimizer/trunk/dtoptimizer.docs/www/download/DTOptimizerPictures.ppt (senha guest, usuario guest) fala um pouco da logica.
Desde aquela epoca o projeto esta funcional, la no Javanet (http://dtoptmizer.dev.java.net). Porem, fazia tempo que eu queria colocar mais coisas e migrar para um repositorio SVN...
Enfim, quase 4 anos depois, finalmente liberei ele no nosso portal de projetos open source da parceria 3layer/lm2, em http://jboss.lm2.com.br/confluence/display/DTOPTIMIZER/Home
NOTA: Naquela epoca meu foco era o drama de mandar dados da camada JaveEE server para a JavaEE client pelo protocolo RMI... agora a onda voltou com o REST (mesmo tendo JSON e outras coisas, ninguem em sa consciencia vai ficar paresando Entity beans muitas vezes complexos, e por isso os DTOs esta a tona novamente...).
Vou documentar melhor a coisa, mas para os mais intrepidos (Guga, vc pode baixar e sair usando...), ja eh uma mao na roda enorme.

Adaptavist Theme Builder (4.0.0-M10) Powered by Atlassian Confluence 3.1, the Enterprise Wiki.