Exception in thread "main" org.hibernate.AnnotationException: No identifier specified for entity: Employee at org.hibernate.cfg.InheritanceState.determineDefaultAccessType(InheritanceState.java:266) at org.hibernate.cfg.InheritanceState.getElementsToProcess(InheritanceState.java:211) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:731) at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.processEntityHierarchies(AnnotationMetadataSourceProcessorImpl.java:249) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.processEntityHierarchies(MetadataBuildingProcess.java:222) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:265) at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83) at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:417) at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:86) at StoreData.main(StoreData.java:14)
            Asked
            
        
        
            Active
            
        
            Viewed 998 times
        
    2 Answers
0
            
            
        It would be nice if you provide your Employee class. 
What this issue means is your entity class is missing a field, annotated with @Id. Every @Entity needs and @Id, which is the primary key in the database.
 
    
    
        Shafiul
        
- 1,452
- 14
- 21
- 
                    In case we do no create id field in employee table. then we can not access the employee tables records. if have created in firstname,lastname column in employee table. – Ashwani Jan 09 '20 at 17:09
- 
                    You basically need some kind of id(either '@Id', or '@EmbeddedId' or multiple '@Ids' with an IdClass for composite key). For you ruse case, you can create a composite primary key with both firstname and lastname or to simplify, add a primary key 'id' in the table. – Shafiul Jan 10 '20 at 09:36
- 
                    
0
            
            
        @Entity
@Table(name = "employee", schema="test")
public class Employee {  
 @Column(name="FIRST_NAME")
private String `firstName`;  
 @Column(name="LAST_NAME")
private String `lastName`;
 public String `getFirstName()` {  
return `firstName`;  
}
public void setFirstName(String firstName){
    this.firstName = firstName;
}  
public String getLastName() {
    return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}  
 
    
    
        Ashwani
        
- 11