Thursday JavaOne – General Session and Persistence

I’ve spent most of the day in the persistence world – quite a bit
different than the desktop world of Tuesday.  The highlight so far
was the Persistence Layers in an Enterprise Application: An Evolution from SQL to OJB to Hibernate session, but I’ll get to that.

Gosling’s morning session was fun.  The last entry in the t-shirt
throwing contest was a big slingshot.  It was actually a manual
slingshot, but there was a jsp that calculated distance based on force
and angle.  It was kinda lame, but they threw out the most
t-shirts.  I almost caught one, but I guess I’ll have to live with
the other four free shirts I got this week.  Additionally, there
were a couple cool demos (plus another d*mn Studio Creator demo – why
did I have to see Tor do the same thing for the third time on the main
stage?).  The real-time reverse pendulum was really impressive,
although the GUI was horrible.  Why can’t cool technology and cool
GUI intersect in the Java world?  Also, there was a tiny Jini
application running on Bluetooth – it was interesting, but it’s not in
my world of interest now.  There was also a very hacky-looking
“wearable computer.”  The presenter (not Gosling) had it do
automatic translation of a Chinese sign, but otherwise he just looked
like a dork.

The cyclists won the t-shirt contest. Too bad that was the only one I didn’t see.

High-Performance JavaTM Technology-based Software: Comparing the Results of a Common Design Implemented in Three Languages
was ok, but do we really need another benchmark saying that Java’s
faster than people thought, though not always as fast as C?  There
are so many benchmarks, and they really don’t mean much.  Why
should I care about this guy’s?  Fortunately, he acknowledged
these weaknesses, but why bother?

Building Data Access Objects (DAOs): Strategies and Lessons Learned
was an interesting session given the transition our product has
made.  They also found that Entity Beans were insufficient, but
they went in a different direction than we did.  We went to OJB
and Hibernate; they rolled their own.  They claim their approach
was an abstraction of the DAO pattern in Core J2EE Design Patterns,
but I haven’t read the book, so I don’t know.  They basically have
one master Data Access Object that handles all the different objects,
and they keep the metadata for the persistence in special tables. 
Then, the developer invokes the metadata to specify the query needed,
and the DAO does the rest.  It’s an interesting approach, but I
think the OJB/JDO/Hibernate approach is more generally applicable,
especially since they haven’t released their code.

Persistence Layers in an Enterprise Application: An Evolution from SQL to OJB to Hibernate was the most important session of the week.  Why?  Because my co-workers (Scott Delap, Amit Gollapudi, and Scott Gelb) presented it on the project for which I work.  I’ve seen one other post
on it, and I hope there will be others.  I’m obviously too close
to give an objective review, but I think it went well.  There
seemed to have been at least 600 people in the room, and there were
some in the overflow room.  The boys probably talked too fast, but
I think most attendees thought they gave an informative presentation,
and there were 19 minutes of good questions.  Impressively, Brian
McCallister of OJB was there and didn’t get upset, despite the message
that we found OJB insufficient and moved to Hibernate.  I talked
to him later, and he acknowledged that our criticisms were valid, so he
couldn’t mind.  It’s nice to see someone here who accepts
reasonable criticism. 

I just blogged through a JDO session, so I don’t know if it was useful,
and next I’m heading to a testing session.  Then, freedom and

About Lance Finney

Father of two boys, Angular/TypeScript developer, Ethical Humanist, and world traveler (when I can sneak it in). Contributor to Grounded Parents.
This entry was posted in Programming. Bookmark the permalink.

Leave a Reply

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

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

Google photo

You are commenting using your Google 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 )

Connecting to %s