Wróć do bloga
Java6 lutego 2024

CRUD, Create | Read | Update | Delete [CRUD] ✍❌

CRUD, Create | Read | Update | Delete [CRUD] ✍❌

CRUD, Create | Read | Update | Delete [CRUD] ✍❌

CRUD — może brzmieć tajemniczo, ale gwarantuję, że jest bliżej Ciebie, niż myślisz. Czy zastanawiałeś się kiedyś, jak działają aplikacje, których codziennie używasz? Jak magia tworzenia postów na mediach społecznościowych, zapisywania kontaktów w telefonie czy dodawania przedmiotów do koszyka w sklepie internetowym staje się możliwa? Jesteś tu, bo chcesz poznać CRUD.

CRUD – wprowadzenie

Z tego materiału dowiesz się:

  • Co to jest CRUD?
  • Jakie zastosowanie ma CRUD?
  • Dlaczego CRUD jest ważny?
  • Jak wyglada implementacja CRUD w Javie?
  • Jakie są dobre praktyki CRUD?

CRUD — Co to jest?

CRUD to akronim od angielskich słów Create, Read, Update, Delete. Te cztery akcje są podstawowymi operacjami, które możemy wykonywać na danych przechowywanych np. w bazie danych. Właściwie każda aplikacja, którą znasz, używa tych operacji do zarządzania danymi. Dlaczego są tak ważne? Ponieważ stanowią one fundament interakcji użytkownika z aplikacją.

Create 🛠

Tworzenie to proces dodawania nowych danych do bazy. Jest to pierwszy krok w cyklu życia danych, umożliwiający budowanie dynamicznych i interaktywnych aplikacji. Może to być dodawanie nowego postu na Facebooku, utworzenie konta w serwisie streamingowym lub zapisanie nowej notatki w telefonie.

Read 📖

Odczytywanie to proces wyszukiwania i wyświetlania danych. Kiedy przeglądasz posty na portalach społecznościowych, wyszukujesz produkty w sklepie internetowym czy sprawdzasz wiadomości e-mail, korzystasz z operacji odczytu.

Update ✍

Aktualizowanie pozwala na modyfikację istniejących danych. Zarówno zmiana statusu zamówienia, edycja postu na Facebooku, jak i aktualizacja profilu użytkownika, to przykłady wykorzystania tej operacji.

Delete ❌

Usuwanie to operacja, która pozwala na usunięcie danych z bazy. Czy to dezaktywacja konta, usunięcie posta czy wyczyszczenie historii przeglądania, każda z tych akcji korzysta z operacji usuwania.

CRUD — Przykłady z życia wzięte

Aby lepiej zrozumieć CRUD, wyobraź sobie aplikację do zarządzania kontaktami. Możesz dodać nowy kontakt (Create), przeglądać listę dostępnych kontaktów (Read), aktualizować informacje o kontakcie, takie jak numer telefonu czy adres e-mail (Update), lub usuwać kontakty, których już nie potrzebujesz (Delete).

contacts app

Dlaczego CRUD jest ważny?

CRUD jest podstawą interakcji między użytkownikiem a aplikacją. Stanowi podstawę zarządzania danymi. Bez CRUD, interakcja z aplikacjami byłaby statyczna i nieefektywna. CRUD pozwala na tworzenie aplikacji, które mogą dynamicznie reagować na działania użytkownika, zapewniając wiele możliwości.

crud

→ ZOBACZ 👉: SQL

CRUD — Implementacja w Javie

Do implementacji CRUD w języku Java, często używane są frameworki takie jak Spring Boot w połączeniu z JPA (Java Persistence API), które ułatwiają tworzenie i zarządzanie REST API – interfejsem umożliwiającym operacje CRUD na danych. Bazy danych, takie jak MySQL, PostgreSQL czy MongoDB, przechowują dane, na których operujemy.

Oczywiście to tylko namiastka tego jak można zaimplementować CRUD w Javie.

→ ZOBACZ 👉: Kurs Java
→ ZOBACZ 👉: Spring, Spring Boot

@RestController
@RequestMapping("/users")
public class UserController {

 private final UserService userService;

 public UserController(UserService userService) {
 this.userService = userService;
 }

 @GetMapping
 public List getUsers() {
 return userService.getUsers();
 }

 @GetMapping("/{id}")
 public User getUser(@PathVariable Long id) {
 return userService.getUser(id).orElse(null);
 }

 @PostMapping
 public User addUser(@RequestBody User user) {
 return userService.addUser(user);
 }

 @PutMapping("/{id}")
 public User updateUser(@PathVariable Long id, @RequestBody User user) {
 user.setId(id);
 return userService.updateUser(user);
 }

 @DeleteMapping("/{id}")
 public void deleteUser(@PathVariable Long id) {
 userService.deleteUser(id);
 }
}

Przykładowy kontroler REST do udostępnienia CRUD przez HTTP zaimplementowany w Springu.

CRUD — poza bazami danych

CRUD nie ogranicza się tylko do operacji na bazach danych. Możemy znaleźć jego zastosowanie w pracy z plikami, zarządzaniu zasobami w aplikacjach webowych oraz w wielu innych miejscach.

CRUD w praktyce

Tworzenie aplikacji CRUD w Java może wydawać się wyzwaniem, ale z odpowiednimi narzędziami i podejściem staje się znacznie prostsze. Oto prosty przykład, jak stworzyć model danych i zaimplementować podstawowe operacje CRUD:

  1. Definicja modelu danych – Określenie, jakie informacje będą przechowywane.
  2. Konfiguracja połączenia z bazą danych – Używanie Spring Data JPA do zarządzania połączeniem.
  3. Tworzenie repozytorium – Interfejs do zarządzania operacjami na danych.
  4. Implementacja serwisu – Logika biznesowa aplikacji, wykorzystująca repozytorium do wykonania operacji CRUD.
  5. Stworzenie kontrolera – Punkty końcowe API, przez które użytkownik komunikuje się z aplikacją.

CRUD — Dobre praktyki

Podczas pracy z CRUD, ważne jest, aby pamiętać o kilku dobrych praktykach:

  • Bezpieczeństwo – Zawsze zabezpieczaj swoje aplikacje przed nieautoryzowanym dostępem do danych.
  • Walidacja danych – Upewnij się, że dane wejściowe są sprawdzane przed ich przetworzeniem.
  • Testowanie – Regularnie testuj swoje aplikacje, aby upewnić się, że wszystkie operacje CRUD działają poprawnie.

→ ZOBACZ 👉: Testowanie oprogramowania
→ ZOBACZ 👉: JUnit – Testy jednostkowe » tutorial dla bystrzaków (testy jednostkowe Java w JUnit 5)

CRUD — Podsumowanie

CRUD to podstawowy zestaw operacji, które znajdują zastosowanie w niemal każdej aplikacji. Zrozumienie i właściwe wykorzystanie tych czterech operacji otwiera przed Tobą drzwi do tworzenia skutecznych, wydajnych i bezpiecznych systemów. Pamiętaj, że każda aplikacja, od najprostszych notatników po zaawansowane systemy zarządzania bazami danych, opiera się na tych czterech fundamentalnych operacjach – CRUD.