This chapter examines some utilities from three commonly used Java libraries: Apache Commons, Guava, and Joda Time. All three libraries attempt to provide extra, useful functionality that the developers believed was missing from the Standard Java APIs, but was common enough to be written into a reusable library.
What kinds of problems these libraries and their functions alleviate can often be asked as interview questions, but it is also important for experienced developers to know what is implemented in common libraries so that they do not need to reinvent the wheel every time they come across the same pattern.
For any mature project, it is not uncommon for all three of these libraries to appear in some way, but many more libraries are available than just the three shown here.
How do you properly escape Strings?
The Commons Lang library complements the functionality found in the java.lang package, including several libraries for manipulating Strings.
Many systems work over many platforms and interfaces. It is common to see a Java server that serves HTML pages and receives input from HTML forms, or you can use a Java application to read and write a comma-separated values file. The StringEscapeUtils class provides the facility to represent a String in that environment. Listing 18-1 shows an example of how you could use the StringEscapeUtils class to provide some HTML formatting.
Listing 18-1: Escaping ...