Apache Commons is an Apache project focused on all aspects of reusable Java components.
It is divided into three components: Commons Proper, Commons Sandbox, Commons Dormant.
3. Introduction
Apache Commons is an Apache project focused on all aspects of reusable Java
components.
It is divided into three components:
The Commons Proper.
The Commons Sandbox.
The Commons Dormant.
4. Commons
Proper
Commons Proper is dedicated to
one principal goal: creating and
maintaining reusable Java
components. The Commons Proper
is a place for collaboration and
sharing, where developers from
throughout the Apache community
can work together on projects to be
shared by the Apache projects and
Apache users
5. There are many libraries, which are released and being used as reusable
component. Few of them are following:
BeanUtils
Collections
Codec
Lang
Functor
Number
Email
Imaging, etc.
6. BeanUtils:
Apache Commons BeansUtils contains all tools necessary for working with
Java beans.
Simply put, a bean is a simple Java classes containing fields, getters/setters,
and a no-argument constructor.
Java provides reflection and introspection capabilities to identify getter-setter
methods and call them dynamically.
Dependency:
compile group: 'commons-beanutils', name: 'commons-beanutils', version: '1.9.2'
7. Collections:
Commons-Collections seek to build upon the JDK classes by providing new
interfaces, implementations and utilities. There are many features, including:
Bag interface
BidiMap interface
MapIterator
Dependency:
compile group: 'org.apache.commons', name: 'commons-collections4', version:
'4.2'
8. Codec:
Apache Commons Codec (TM) software provides implementations of
common encoders and decoders such as Base64, Hex, Phonetic and URLs.
Dependency:
compile group: 'org.apache.commons', name: 'commons-collections4', version:
'4.2'
9. Lang:
The standard Java libraries fail to provide enough methods for manipulation of
its core classes. Apache Commons Lang provides these extra methods.
Lang provides a host of helper utilities for the java.lang API, notably String
manipulation methods, basic numerical methods, object reflection, concurrency,
creation and serialization and System properties.
Dependency:
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.8.1'
10. Functor:
A functor is a function that can be manipulated as an object, or an object
representing a single, generic function.
Commons Functor defines three general types of functors:
1. Predicates
2. Functions
3. Procedures
11. The Commons project also
contains a workspace that is open
to all Apache committers. It's a
place to try out new ideas and
prepare for inclusion into the
Commons portion of the project or
into another Apache project.
SandBox
12. We can not use any library which lies in sandbox, yet there are
documentation available.
13. These are Commons components
that have been deemed inactive
since they have seen little recent
development activity. If you wish to
use any of these components, you
must build them yourselves.
Dormant