问题
I'd be interested whether there is the difference between javax.persistence.Id
and org.springframework.data.annotation.Id
.
- If Spring has created that annotation only for support the JPA annotation, then why?
- Does
org.springframework.data.annotation.Id
have another [additional] purpose?
回答1:
org.springframework.data.annotation.Id
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.
来源:https://stackoverflow.com/questions/39643960/whats-the-difference-between-javax-persistence-id-and-org-springframework-data