Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 16200|Απάντηση: 0

[Πηγή] Η διαφορά μεταξύ Spring JPA save και saveAndFlush

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 1/4/2019 4:39:22 μ.μ. | | |
Στο saveAndFlush, οι αλλαγές σε αυτήν την εντολή ανανεώνονται αμέσως στη βάση δεδομένων. Με την αποθήκευση, αυτό δεν ισχύει απαραίτητα και μπορεί να παραμείνει στη μνήμη μόνο μέχρι να εκδοθεί μια εντολή flush ή commit.

Σημειώστε, ωστόσο, ότι ακόμα και αν ανανεώσετε τις αλλαγές σε μια συναλλαγή και δεν τις δεσμεύσετε, οι αλλαγές εξακολουθούν να μην είναι ορατές στην εξωτερική συναλλαγή μέχρι να δεσμευτούν σε αυτήν τη συναλλαγή.

Στην περίπτωσή σας, μπορεί να χρησιμοποιείτε κάποιο είδος μηχανισμού συναλλαγών που θα σας εκδώσει μια εντολή commit εάν όλα είναι καλά.

Χρησιμοποιήστε τη μέθοδο JPA saveAndFlush()

Εφαρμογή Αύξηση και Τροποποίηση

Σημείωση: Το επίπεδο ελέγχου πρέπει να φιλτράρει παραμέτρους,

saveAndFlush Αυτή η μέθοδος καθορίζει πρώτα εάν θα χρησιμοποιηθεί η μέθοδος persist ή η μέθοδος συγχώνευσης με βάση το ID==null
Θα αποφασίσει εάν θα χρησιμοποιήσει εισαγωγή ή ενημέρωση με βάση το εάν το αναγνωριστικό είναι εγγεγραμμένο στη βάση δεδομένων

Εξετάζουμε τη διαφορά με την απομεταγλώττιση του πηγαίου κώδικα Java

IDEA_ συντόμευση για να βρείτε την υλοποίηση της διεπαφής

Στυλ IDEA ctrl + alt +B

Στυλ έκλειψης ctrl +T


Αποθήκευση διεπαφής:

Μέθοδος υλοποίησης:

Διεπαφή saveAndFlush:
Μέθοδος υλοποίησης:

Όπως μπορείτε να δείτε από τον πηγαίο κώδικα, καλώντας τη μέθοδο saveAndFlush,Το saveAndFlush καλεί τη μέθοδο αποθήκευσης και στη συνέχεια τη μέθοδο flush

(Τέλος)





Προηγούμενος:Η γραμμή εντολών είναι πολύ μεγάλη. Συντομεύστε τη γραμμή εντολών για το itsvse ή επίσης για...
Επόμενος:Χρησιμοποιήστε το Nginx Reverse Proxy και το Content Replacement Module για να εφαρμόσετε δυναμική αντικατάσταση περιεχομένου ιστού
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com