Hibernate Types in JAVA:
Hibernate types fall into three broad categories: entities, components, and values.
1.) Entities:
Generally, an entity is a POJO class that has been mapped into the database using the
2.) Components:
Lying somewhere between entities and values are component types. When the class representation is simple and its instances have a strong one-to-one relationship with instances of another class, then it is a good candidate to become a component of that other class.
3.) Values:
Everything that is not an entity or a component is a value. Generally, these correspond to the data types supported by your database, the collection types, and, optionally, some userdefined types.