||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Java components, open source software
Title: Apache Jakarta Commons: Reusable Java Components
Author: Will Iverson
Publisher: Prentice Hall PTR
Level: Basic Java
Verdict: Worth seeking out if you want to explore the Jakarta Commons libraries
The Jakarta Commons project is an open-source projected dedicated to delivering re-usable Java components that are independent of any other underlying frameworks or projects. It aims to create sets of libraries that developers can slot into their own work and use with minimal effort. Ranging from utility classes to extensions to core Java APIs to sets of components that tackle specific areas (XML and Networks, for example), it's an extremely useful resource for developers to be aware of.
However, while the code is solid and provides good functionality, the documentation is variable - sometimes good, sometimes not so good, sometimes nothing more than the JavaDocs. So it's the case that finding out what's there, and how it works, can be way too difficult. Which is why a book such as 'Apache Jakarta Commons: Reusable Java Components' is so useful. It provides both an easy guide to what's in the Commons and some much needed documentation.
The book doesn't cover the full set of Commons components, focusing instead on 12 key packages: FileUpload, HttpClient, Net, Pool, DBCP (Database Connection Pool), BeanUtils, JXPath, Logging, Lang, Collections, Codec and CLI (Command Line Interface). There's mention of some of the other packages, as well as discussion on how to use the packages under Eclipse, but the main core of the book is those 12 components.
Each of the 12 packages gets a chapter to itself. Here there's background information, UML class diagrams, side-bars of useful info and lots of sample code. The latter is generally in the form of complete programs rather than simple code snippets. For example the Net package is illustrated with code that builds a simple FTP client and another program that downloads headers from a news server using NNTP. This sample code is an excellent way of showing how the Commons can be used in real applications.
If you are new to the Jakarta Commons and want something more in the way of documentation and code samples then this book, itself published under an open source licence, is worth seeking out.