Coupled with the ability to specify behavior declaratively is the strong use of intelligent defaults in EJB. Much behavior
is attached automatically to an EJB or an entity without it being declared explicitly, such as the transactional behavior
of session bean methods and the names of the table and columns that map to an entity’s persistent data properties.
An annotation, or its counterpart in XML, needs to be specified explicitly only when non-default behavior is desired.
In the most common cases, where the default behavior is leveraged, this approach leads to very sparse, clean code.
This development model is known as configuration by exception, because only in exceptional (non-default) cases is it
necessary to configure the behavior of the component explicitly.