Value Object Wizard (VOW)

Jul 13th, 2010 | By | Category: architecture, j2ee, java


Launching the Value Object Wizard

I have launched a project called Value Object Wizard in sourceforge.

Please take a quick look and send me your comments. The details are in the home page.


Be Sociable, Share!

 Raja has been blogging in this forum since 2006. He loves a technical discussion any day. He finds life incomplete without a handy whiteboard and a marker.

Leave a comment »

  1. Hi Raja,

    Nice explanation and great work as always. I would like to discuss another approach which I have used in past. There is some overhead but for some kind of systems it might make lot of sense or you can enlighten me.

    What if we separate read and write operations? Let’s consider User profile, Product description etc. If we need to render this information on UI we may end up calling multiple services to aggregate data to create final DTO or query multiple tables. What if we keep DTO ready? That is, during the write operations which will be less in scenarios mentioned above or are not mission critical we update our DTO which we have in a persistent store (say a NoSQL) db. When we need to display the DTO we can pick directly from there and render on screen. I called these DTOs – Qiews (Query’s View) just to separate them from SQL views.

    Benefit was that I did not need a high configuration server as I did not need the cache. It was fast as it just needed a table/document lookup.

  2. Hi Anuj Thanks.

    The caching of DTO in read only situations is highly viable. We do that in multiple scenarios where the slight latency between the cache and OLTP is not so important. This is a very good candidate for product listing pages for instance.

    The VO wizard is designed to be used in situations where the DTO needs to be obtained from the back end for computational purposes (such as check out for instance). This was written where there was no access to a method interception framework such as AOP. With Spring AOP, this becomes redundant to an extent since the interception is possible via advices. I still think that there is some value though because this allows a one stop show to configure what kind of caching should be active for what value objects.

  3. HI Raja,

    Yes, I got that, I was just trying to get my understanding validated. I am glad to know that I used my Qiews approach in right situation. I used background processing to get the DTOs ready. And yes, your VOWizard is obviously useful in scenarios where we need computational access.


Leave Comment