Tavaszi adatok - CrudRepository save () módszer
1. Áttekintés
CrudRepository egy Spring Data interfész általános CRUD műveletekhez egy adott típusú lerakaton. Számos módszert kínál a dobozból az adatbázissal való interakcióhoz.
Ebben az oktatóanyagban elmagyarázzuk, hogyan és mikor kell használni CrudRepositorymentés() módszer.
Ha többet szeretne megtudni a tavaszi adattárakról, tekintse meg összehasonlító cikkünket CrudRepository a keretrendszer más adattár interfészei felé.
2. Függőségek
Hozzá kell adnunk a Spring Data és a H2 adatbázis-függőségeket pom.xml fájl:
org.springframework.boot spring-boot-starter-data-jpa com.h2database h2 futásidejű
3. Példa alkalmazásra
Először hozzuk létre a Spring Data nevű entitásunkat MerchandiseEntity. Ez az osztály fog definiálja azokat az adattípusokat, amelyek az adatbázisba fennmaradnak, amikor meghívjuk a mentés() módszer:
@Entity public class MerchandiseEntity {@Id @GeneratedValue (strategy = GenerationType.AUTO) private Long id; magán dupla ár; privát String márka; public MerchandiseEntity () {} public MerchandiseEntity (String márka, dupla ár) {this.brand = brand; ez.ár = ár; }}
Ezután hozzunk létre egy CrudRepository interfész a MerchandiseEntity:
@Repository nyilvános felület Az InventoryRepository kiterjeszti a CrudRepository {}
Itt adjuk meg az entitás osztályát és az entitásazonosító osztályát, MerchandiseEntity és Hosszú. Amikor ennek az adattárnak egy példányát példányosítja, az alapul szolgáló logika automatikusan a helyén lesz a munkánkkal való együttműködéshez MerchandiseEntity osztály.
Tehát nagyon kevés kóddal már készen állunk a mentés() módszer.
4. CrudRepository Save () Új példány hozzáadásához
Hozzunk létre egy új példányt MerchandiseEntity és mentse az adatbázisba a InventoryRepository:
InventoryRepository repo = context .getBean (InventoryRepository.class); MerchandiseEntity nadrág = new MerchandiseEntity ("Nadrágpáros", BigDecimal.ONE); nadrág = repo.save (nadrág);
Ennek futtatásával új bejegyzés jön létre az adatbázis táblájában MerchandiseEntity. Figyeljük meg, hogy soha nem adtunk meg egy id. A példány kezdetben egy nulla értéke annak id és amikor felhívjuk a mentés() módszer, an id automatikusan generálódik.
A mentés() metódus adja vissza a mentett entitást, beleértve a frissítettet is id terület.
5. CrudRepository save () egy példány frissítéséhez
Használhatjuk ugyanazt a save () metódust meglévő bejegyzés frissítéséhez az adatbázisunkban. Tegyük fel, hogy megmentettünk egy MerchandiseEntity példány egy adott címmel:
MerchandiseEntity nadrág = new MerchandiseEntity ("Nadrágpár", 34.99); nadrág = repo.save (nadrág);
De később azt tapasztaltuk, hogy frissíteni szeretnénk a cikk árát. Ezután egyszerűen megszerezhetjük az entitást az adatbázisból, elvégezhetjük a módosítást és felhasználhatjuk az mentés() módszer, mint korábban.
Feltéve, hogy ismerjük a id az elem (nadrágazonosító), használhatjuk a CRUDTár módszer findById hogy megszerezzük entitásunkat az adatbázisból:
MerchandiseEntity nadrágInDB = repo.findById (pantsId) .get (); pantsInDB.setPrice (44.99); repo.save (nadrágInDB);
Itt frissítettük az eredeti entitásunkat egy új árral, és a változtatásokat visszatártuk az adatbázisba.
6. Következtetés
Ebben a gyors cikkben kitértünk a használatára CrudRepository’S save () metódus. Ezzel a módszerrel új bejegyzést adhat hozzá az adatbázisához, valamint frissíthet egy meglévőet.
Szokás szerint a cikk kódjának vége a GitHubon.