Jarné dáta - metóda CrudRepository save ()

1. Prehľad

Úložisko Crud je a Jarné dátové rozhranie pre všeobecné operácie CRUD na úložisku konkrétneho typu. Poskytuje niekoľko metód interakcie s databázou po vybalení z krabice.

V tomto výučbe vysvetlíme, ako a kedy používať Úložisko Cruduložiť () metóda.

Ak sa chcete dozvedieť viac informácií o úložiskách Spring Data, pozrite si náš porovnateľný článok Úložisko Crud k iným rozhraniam úložiska rámca.

2. Závislosti

Budeme musieť do našej pridať databázové závislosti Spring Data a H2 pom.xml spis:

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

3. Ukážka aplikácie

Najskôr vytvorme našu entitu Spring Data s názvom MerchandiseEntity. Táto trieda bude definujte dátové typy, ktoré sa dostanú do databázy, keď zavoláme uložiť () metóda:

@Entity public class MerchandiseEntity {@Id @GeneratedValue (strategy = GenerationType.AUTO) private Long id; dvojitá súkromná cena; súkromná značka String; public MerchandiseEntity () {} public MerchandiseEntity (reťazcová značka, dvojnásobná cena) {this.brand = značka; this.price = price; }}

Ďalej vytvoríme a Úložisko Crud rozhranie pre prácu s MerchandiseEntity:

@Repository verejné rozhranie InventoryRepository rozširuje CrudRepository {}

Tu zadáme triedu entity a triedu entity, MerchandiseEntity a Dlhé. Keď je inštancia tohto úložiska vytvorená inštanciou, bude pre prácu s našim automaticky zavedená logika, ktorá je k dispozícii MerchandiseEntity trieda.

Takže s veľmi malým kódom sme už pripravení začať používať uložiť () metóda.

4. Úložisko Crud save () na pridanie novej inštancie

Vytvorme novú inštanciu MerchandiseEntity a uložte ho do databázy pomocou InventoryRepository:

InventoryRepository repo = kontext .getBean (InventoryRepository.class); MerchandiseEntity pants = new MerchandiseEntity ("Pair of Pants", BigDecimal.ONE); nohavice = repo.save (nohavice);

Jeho spustením sa vytvorí nový záznam v databázovej tabuľke pre server MerchandiseEntity. Všimnite si, že sme nikdy neuviedli id. Inštancia je pôvodne vytvorená pomocou a nulový hodnota pre jeho id a keď voláme uložiť () metóda, an id sa generuje automaticky.

The uložiť () metóda vráti uloženú entitu vrátane aktualizovanej id lúka.

5. Úložisko Crud save () na aktualizáciu inštancie

Môžeme použiť rovnakú metódu save () aktualizovať existujúci záznam v našej databáze. Predpokladajme, že sme zachránili a MerchandiseEntity inštancia s konkrétnym titulom:

MerchandiseEntity pants = new MerchandiseEntity („Pair of Pants“, 34,99); nohavice = repo.save (nohavice); 

Ale neskôr sme zistili, že chceme aktualizovať cenu položky. Potom by sme mohli entitu jednoducho získať z databázy, vykonať zmenu a použiť uložiť () metóda ako predtým.

Za predpokladu, že vieme id položky (pantsId), môžeme použiť CRUDRepository metóda findById získať našu entitu z databázy:

MerchandiseEntity pantsInDB = repo.findById (pantsId) .get (); pantsInDB.setPrice (44,99); repo.save (pantsInDB); 

Tu sme aktualizovali našu pôvodnú entitu o novú cenu a uložili sme zmeny späť do databázy.

6. Záver

V tomto rýchlom článku sme sa venovali použitiu Úložisko CrudMetóda save (). Túto metódu je možné použiť na pridanie nového záznamu do databázy aj na aktualizáciu existujúceho.

Ako obvykle je kód článku na GitHubu u konca.


$config[zx-auto] not found$config[zx-overlay] not found