Hibernate Annotations provide an alternative method of supplying metadata which maps Java objects to the database tables they represent.
Hibernate Annotations support the JPA specification (JSR-317) but provide more extensive functionality which is not covered by the specification. These annotations are used in conjunction with core Hibernate and hibernate entity manager and require Java 5 or above.