נתוני אביב - שיטת שמירת CrudRepository ()

1. סקירה כללית

מאגר Crud הוא ממשק Spring Data לפעולות CRUD כלליות במאגר מסוג מסוים. הוא מספק מספר שיטות מחוץ לקופסה לאינטראקציה עם מסד נתונים.

במדריך זה נסביר כיצד ומתי להשתמש ב- מאגר Crudלשמור() שיטה.

למידע נוסף על מאגרי Spring Data, עיין במאמר שלנו שמשווה מאגר Crud לממשקי מאגר אחרים של המסגרת.

2. תלות

נצטרך להוסיף תלות באביב נתונים ו- H2 למסד הנתונים שלנו pom.xml קוֹבֶץ:

 org.springframework.boot spring-boot-starter-data-jpa com.h2database h2 runtime 

3. יישום לדוגמא

בואו ניצור תחילה את ישות האביב שלנו שנקראת סחורה. הכיתה הזו תרצה הגדר את סוגי הנתונים שיחזיקו מעמד למסד הנתונים כשאנחנו קוראים לשמור() שיטה:

@Entity Class Class MerchandiseEntity {@Id @GeneratedValue (אסטרטגיה = GenerationType.AUTO) פרטי מזהה ארוך; מחיר כפול פרטי; מותג מחרוזת פרטי; public MerchandiseEntity () {} MerchandiseEntity public (מותג מחרוזת, מחיר כפול) {this.brand = brand; מחיר זה = מחיר; }}

לאחר מכן, בואו ליצור a מאגר Crud ממשק לעבודה עם סחורה:

ממשק ציבורי @ מאגר @ InventoryRepository מרחיב את CrudRepository {}

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

אז עם מעט מאוד קוד, אנחנו כבר מוכנים להתחיל להשתמש ב- לשמור() שיטה.

4. מאגר Crud שמור () כדי להוסיף מופע חדש

בוא ניצור מופע חדש של סחורה ושמור אותו במסד הנתונים באמצעות InventoryRepository:

InventoryRepository repo = context .getBean (InventoryRepository.class); מכנסי MerchandiseEntity = MerchandiseEntity חדשים ("זוג מכנסיים", BigDecimal.ONE); מכנסיים = repo.save (מכנסיים);

הפעלה זו תיצור ערך חדש בטבלת מסד הנתונים עבור סחורה. שים לב שמעולם לא ציינו תְעוּדַת זֶהוּת. המופע נוצר בתחילה עם ריק ערך עבורו תְעוּדַת זֶהוּת וכשאנחנו קוראים לשמור() שיטה, an תְעוּדַת זֶהוּת נוצר באופן אוטומטי.

ה לשמור() שיטה מחזירה את הישות השמורה, כולל המעודכן תְעוּדַת זֶהוּת שדה.

5. מאגר Crud שמור () כדי לעדכן מופע

אנו יכולים להשתמש באותה שיטת save () לעדכון רשומה קיימת במסד הנתונים שלנו. נניח שהצלנו א סחורה מופע עם כותרת ספציפית:

מכנסי MerchandiseEntity = MerchandiseEntity חדשים ("זוג מכנסיים", 34.99); מכנסיים = repo.save (מכנסיים); 

אך בהמשך גילינו שאנחנו רוצים לעדכן את מחיר הפריט. נוכל פשוט להשיג את הישות ממסד הנתונים, לבצע את השינוי ולהשתמש ב- לשמור() שיטה כמו קודם.

בהנחה שאנחנו יודעים את תְעוּדַת זֶהוּת של הפריט (מכנסיים), נוכל להשתמש ב- CRUD מאגר שיטה findById כדי להשיג את היישות שלנו ממסד הנתונים:

MerchandiseEntity pantsInDB = repo.findById (pantsId) .get (); pantsInDB.setPrice (44.99); repo.save (pantsInDB); 

כאן עדכנו את הישות המקורית שלנו במחיר חדש ושמרנו את השינויים בחזרה למסד הנתונים.

6. מסקנה

במאמר מהיר זה סקרנו את השימוש ב- מאגר Crudשיטת 'שמור ()'. ניתן להשתמש בשיטה זו כדי להוסיף ערך חדש למסד הנתונים שלך וכן לעדכן ערך קיים.

כרגיל, הקוד למאמר הסתיים ב- GitHub.