Links
Currently




« 5 July 2005 - 9:47 am | Main | 6 July 2005 - 11:34 pm »

5 July 2005 - 3:39 pm

JavaOne, Day One Sessions

The following is not an exhaustive discussion of the sessions I attended on the first day of JavaOne, nor is it even a complete listing of those sessions, but these were the ones that sparked my interest enough to type up a few words about them.

What's New in Eclipse? A Java IDE and a Whole Lot More
As it turns out, there isn't a whole lot of new information to impart regarding Eclipse. An interesting plugin to look out for is the Mylar plugin. Also of interest is the Higgins plugin, which creates a trust framework within Eclipse. (I assume the name is an allusion to the Higgins on "Magnum, P.I.," but I could be wrong.)

Enterprise Java Beans 3.0
The EJB 2.1 specification created a powerful but complex system. The EJB 3.0 spec attempts to deal with that complexity without compromising the functionality the developers have grown accustom to. Notable highlights include the removal of the EJBHome and EJBObject interfaces, the removal of the JNDI APIs, the elimination of deployment descriptor documents, and the re-introductions of a plain business interface for the beans. Further, checked RemoteExceptions are no longer thrown, so there is no longer an interface difference between local and remote EJBs. RemoteExceptions will always be wrapped in an EJBException when thrown. The EJB 3.0 specification relies heavily on the Java 1.5 concept of annotations. Using annotations you put descriptors of your beans directly in the source code rather than having an external xml file define them.

The EJB 3.0 specification also includes a new Persistence Model definition. In this new model, which resembles the open source Hibernate product in many ways, entities are simple Java classes. These classes are concrete and the can have getters and setters or persistent variables. Annotations again drive configuration.

For more information see the EJB 3.0 Simplified API document and the Persistence API document available on the Java website.

Designing and Coding Java-based Applications for High Performance Computing: Dissecting a Telco Application
Some performance recommendations gleaned from designing and implementing an application that processes millions of requests per hour:

  • No String concatenation
  • Use Object Pools [a later presentation called Object Pool use a performance myth: unless your objects have hundreds of elements, you don't actually save that much by using them]
  • Parallelize as much as possible
  • Order the tests done by if and switch clauses
  • Replace some tests with exception handling. For example, if an input will be null only one time out of a thousand or a million, it might be more efficient to just catch the NullPointerException rather than testing each input for null.
  • Profile, profile, profile.
  • Avoid J2EE solutions, as they don't give enough flexibility to tweak for high performance.

Posted by on 5 July 2005 at 3:34 PM

Comments
 
Recent Posts About the Author Navigation

David is an occasional blogger, software engineer, Nintendo fanboy, liberal, news magazine addict, voracious TiVo user, and bibliophile. He was born in St. Louis, grew up in southern Indiana, and returned to St. Louis to attend Washington University. He hasn't managed to escape yet. He's a fan of free wine tastings, too many tv shows to name, and eating out.

David makes his living developing web applications used internally by his employer. He doesn't blog about work because he's heard too many stories about that causing workplace troubles.

There's more on the about page.

Recent Comments
Recent Photos
© 2000 - 2008 David Warner, et. al.