Question

Y at-il une différence entre:

  • @Cascade (org.hibernate.annotations.CascadeType.REMOVE) et
  • @Cascade (org.hibernate.annotations.CascadeType.DELETE)?
Était-ce utile?

La solution

Il n'y a pas de différence; ils sont synonymes.

La documentation est plutôt silencieuse sur cela, mais si vous regardez à la source de AnnotationBinder.getCascadeStrategy(), les deux sont en cours de traduction type en cascade « supprimer » Hibernate.

La raison pour laquelle les deux existent (et je devine ici) est parce que noyau Hibernate a toujours utilisé « SUPPR » comme type de cascade, mais la CascadeTypes de JPA spécifie « RETIRER » comme une constante. Mise en veille prolongée CascadeTypes, étant partie Annotations de l'extension JPA de mise en veille prolongée a donc à la fois pour être complet / cohérence.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top