תוכן עניינים:

מהי מדיניות ברירת המחדל לאחור בניהול עסקאות?
מהי מדיניות ברירת המחדל לאחור בניהול עסקאות?

וִידֵאוֹ: מהי מדיניות ברירת המחדל לאחור בניהול עסקאות?

וִידֵאוֹ: מהי מדיניות ברירת המחדל לאחור בניהול עסקאות?
וִידֵאוֹ: קורס שאילתות תגובה מלאה תוך שעה | TanStack Query v4 למתחילים 2024, נוֹבֶמבֶּר
Anonim

ב בְּרִירַת מֶחדָל תצורה, של מסגרת האביב עִסקָה קוד תשתית מסמן רק א עִסקָה ל גלגל לאחור במקרה של זמן ריצה, חריגים לא מסומנים; כלומר, כאשר החריג שנזרק הוא מופע או תת-מחלקה של RuntimeException. (גם שגיאות - על ידי בְּרִירַת מֶחדָל - תוצאה של א גלגל לאחור ).

כמו כן נשאל, מהו ניהול עסקאות?

פרסומות. מסד נתונים עִסקָה הוא רצף של פעולות שמתייחסות אליהן כיחידת עבודה אחת. פעולות אלו אמורות להסתיים לחלוטין או לא להשפיע כלל. ניהול עסקאות מהווה חלק חשוב ביישום ארגוני מכוון RDBMS כדי להבטיח שלמות נתונים ועקביות.

שנית, איך אתה מתמודד עם החזרה ב-JPA? זכור כי ישות אינה מבצעת שאילתת הוספה באופן מיידי. זה רק אומר ל-Hibernate שלפני סיום העסקה, יהיה צורך לבצע הוספה. ל גלגל לאחור עסקה שאתה יכול להשתמש בהערת @Transaction. אתה יכול ליישם את זה ברמת השיטה או ברמת הכיתה.

לאחר מכן, השאלה היא, מה עושה הערת @transactional?

ה ביאור עסקה עצמו מגדיר את ההיקף של מסד נתונים בודד עִסקָה . הקשר ההתמדה הוא רק אובייקט סנכרון שעוקב אחר המצב של קבוצה מוגבלת של אובייקטי Java ומוודא ששינויים באובייקטים האלה הם בסופו של דבר התמיד בחזרה למסד הנתונים.

כיצד אוכל להחזיר עסקה לאחור ב-Java?

דוגמה לביצוע/החזרה לאחור

  1. טען את מנהל ההתקן של JDBC, באמצעות שיטת forName(String className) API של המחלקה.
  2. צור חיבור למסד הנתונים.
  3. השבת התחייבות אוטומטית, עם שיטת ה-API של setAutoCommit(boolean autoCommit) של החיבור.
  4. בצע עדכוני SQL וביצוע כל אחד מהם, עם שיטת ה-API של commit() של ה-Connection.

מוּמלָץ: