Andrew Tobilko Andrew Tobilko - 7 months ago 40
Java Question

What's the difference between javax.persistence.Id and

I'd be interested whether there is the difference between


  1. If Spring has created that annotation only for support the JPA annotation, then why?

  2. Does
    have another [additional] purpose?

Answer is currently used by Spring to support mapping for other non relational persistence databases or frameworks that do not have a defined common persistence API like JPA. So, it is normally used when dealing with other spring-data projects such as spring-data-mongodb, spring-data-solr, etc.

javax.persistence.Id is the annotation defined by JPA for all its implementations. Have in mind JPA only applies for management of relational data.