Hobione's Weblog

Living & Breathing in Web 2.0 Era

JavaOne 2009: Day three

1. Unit Testing That Sucks Less: Small Things Make a Big Difference: Neal Ford talked about different testing tools like Jester, MockRunner, Hamcrest, Groovy, RSpec/EasyB, and Selenium. He showed how Groovy can help test java code. He also mentioned about Unitils.org as well with dbUnit.

2. Writing Killer JavaServer Faces 2.0 UI Components:   Kito Mann showed ease of use and component development in JSF 2.0.  He demoed and did walk through process of creating UI components.  He introduced few facelets tag like, <ui:repeat>, <f:ajax>.  He talked about annotation and resource hanler as well.

3. Visual JavaFX Techlonogy-Based Design with JFXBuilder:   I was very excited to take this session.  Josh Doenias and Jeff martin did an excellent job to demostrate thier live code demo.  They developed a movie database application using drag and drop JFXBuilder tool.  The tool only has been around six months but I do see a great future of this tool and looking forward to use it in near future. Here is the tuturioal for Databox.

4. Best Practices for Large-Scale Web Sites: Lessons from eBay: * Randy Shoup, had worked for Oracle in 8 year now Distinguished Architect in eBay.  He gave an outstanding presentation in Javaone.   Here are interesting inside information he gave us during the session:

  • Over 80 millions active users
  • 100,000 line of code get released every two weeks
  • 16,000 java application server a day
  • No HTTP session
  • No EJBs

Here are 5 best practices for Internet Scale:

  1. Partition Everything: If you cant split it, you cant scale it.
  2. Asynchrony Everywhere
  3. Automate Everything
  4. Remember Everything Fails
  5. Embrace Inconsistency
Randy Shoup RandyRandy @ eBay

5. Keeping a Relational Perspective for Optimizing the Java Persistence API (JPA):   Debu and Reza took a deep dive to JPA and explained how to use JPA in details.  Here some keynotes I jotted down from this session:

  1. De-normalize tables
  2. DDL runs faster then DML
  3. Lazy loading: How and When will it load:  Look for user name.  It is a good candidate for eager loading.  Searing for Blob, it could be a lazy loading candidate.
  4. Native query: Be careful.
  5. Name queries
  6. Why is caching important
  7. Add second level cache
  8. Locking table, use diagnostic tool (i.e. Terracotta)
Debu and Reza email Pavillion

My co-worker and I had a long discussion after took this session and here we came up with this desgin to share middle tier from different modules in iDMS application.

Share middle tier in between different modules.


June 4, 2009 - Posted by | JavaOne

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: