Common libraries

Published: September 26, 2015

In Resources.


There is a number of libraries that can solve your everyday issues. You don't have to use them all but at least you should know they exist, so next time you will need a specific utility class you will be able to use existing one. Using common libraries in your projects make your own code more reusable & allows you to easy move parts of code (like algorithms) between your own projects (when you cannot just prepare own common library).

Apache Commons

Project home: Apache Commons

  • Lang - additional utilities for classes from Java.Lang package, for example: ArrayUtils & StringUtils
  • Configuration: generic API for various configuration sources (XML, JNDO, JDBC, INI)
  • IO - additional IO functions
  • Collections - additional tools for Java Collections (example: LRU Map)
  • BeanUtils - get/set property by name, dynamic beans & other utility classes for Java reflection API
  • more: CLI, email, compress, CSV, upload, math, object pool, base64, bytecode manipulation, database connection pool, JDBC utils, images, net...



  • "Jakarta Commons Cookbook" - Timothy M. O'Brien, 2004
  • "Apache Jakarta Commons: Reusable Java(TM) Components" - Will Iverson, 2005

Google Guava

Project home: Guava

Important parts

  • collection utils, unsigned, caching, event bus, optional, predicates, Math, string join/split, ordering



  • "Getting Started with Google Guava" - Bill Bejeck, 2013



Build string contents basing on static template and set of values.

File formats

See also