In Java Persistence API you use them to map a Java class with database tables. For example @Table () Used to map the particular Java class to the date base table. @Entity Represents that the class is an entity class. Similarly you can use many annotations to map individual columns, generate ids, generate version, relationships etc.