Η ίδια η στήλη διάκρισης χρησιμοποιείται για τη διάκριση μεταξύ διαφορετικών κλάσεων όταν οι ιεραρχίες κλάσεων αντιστοιχίζονται επίπεδες ή κάθετες. Η ιδέα πίσω από την επίπεδη και κάθετη αντιστοίχιση είναι ότι κάθε κλάση αντιστοιχίζεται σε μία γραμμή στον πίνακα της βασικής κλάσης. Η τιμή διακριτικού χρησιμοποιείται για τον καθορισμό του τύπου κάθε σειράς.
Πώς βρίσκετε τη στήλη διακριτικού;
Ο ορισμός της οντότητας: @Entity(name="Port") @DiscriminatorColumn(name="type", discriminatorType=DiscriminatorType. STRING, μήκος=10) @DiscriminatorValue(value="port") @Table(name="vPorts") @XmlRootElement(name="port") δημόσια τάξη PortEntity { …
Τι είναι το διακριτικό στην Java;
Τύπος σχολιασμού DiscriminatorColumn
Καθορίζει τη στήλη διακριτικού για τις στρατηγικές αντιστοίχισης SINGLE_TABLE και JOINED Inheritance. Η στρατηγική και η στήλη διακριτικού καθορίζονται μόνο στη ρίζα μιας ιεραρχίας ή υποιεραρχίας κλάσης οντοτήτων στην οποία εφαρμόζεται διαφορετική στρατηγική κληρονομικότητας.
Ποια είναι η χρήση της στήλης διακριτικού στο Hibernate;
Εάν θέλετε να χρησιμοποιήσετε αυτήν τη στρατηγική με το JPA, ο πίνακας της βάσης δεδομένων σας πρέπει να έχει μια στήλη διαχωρισμού. Η τιμή σε αυτήν τη στήλη προσδιορίζει την κατηγορία οντοτήτων στην οποία θα αντιστοιχιστεί κάθε εγγραφή. Από προεπιλογή, η αδρανοποίηση χρησιμοποιεί την ίδια προσέγγιση.
Ποια είναι η χρήση του @DiscriminatorColumn;
Διακρίσεις είναιχρησιμοποιείται συνήθως στο SINGLE_TABLE inheritance επειδή χρειάζεστε μια στήλη για να προσδιορίσετε τον τύπο της εγγραφής. Παράδειγμα: Έχετε έναν μαθητή τάξης και 2 υποτάξεις: GoodStudent και BadStudent.
![](https://i.ytimg.com/vi/elG0EBQCW8o/hqdefault.jpg)