Prvá RESTová služba v Jave: Krok za krokom s Maven, Tomcat a Hibernate

1. Úloha REST architektúry: Prečo sa používa a aké benefity prináša

REST (Representational State Transfer) je architektonický štýl používaný na tvorbu webových služieb. REST služby umožňujú klientom (napr. frontend aplikáciám) pristupovať k dátam a manipulovať s nimi cez jednoduché HTTP požiadavky ako GET, POST, PUT alebo DELETE.

Medzi hlavné výhody REST patrí:

REST je dnes štandardom v modernom webovom vývoji. Práve preto sa vyučuje aj v našom kurze zameranom na Java REST služby s Hibernate.

2. Nastavenie Maven projektu od nuly

Vytvorenie REST služby začína založením Maven projektu. V Eclipse zvolíte New Project → Maven Project a nastavíte skupinu a názov projektu, napríklad:

groupId: sk.example
artifactId: rest-demo

V súbore pom.xml následne definujete závislosti:

<dependencies>
  <dependency>
    <groupId>org.glassfish.jersey.containers</groupId>
    <artifactId>jersey-container-servlet</artifactId>
    <version>3.0.2</version>
  </dependency>
  <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>5.6.15.Final</version>
  </dependency>
</dependencies>

Adresárová štruktúra by mala obsahovať src/main/java pre kód a src/main/resources pre konfigurácie.

3. Import Hibernate a základné triedy

Hibernate je ORM framework, ktorý mapuje triedy v Jave na databázové tabuľky. Najprv si vytvorte entitu napríklad User:

@Entity
@Table(name = "users")
public class User {
  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;

  private String name;
  private String email;
}

Následne je potrebné nakonfigurovať Hibernate v súbore hibernate.cfg.xml a vytvoriť SessionFactory triedu na prácu s databázou.

4. Napísanie prvej REST metódy (GET/POST) a anotácie

Na vytvorenie REST metódy použijete anotácie z Jersey:

@Path("/users")
public class UserResource {

  @GET
  @Produces(MediaType.APPLICATION_JSON)
  public List<User> getUsers() {
    return userService.findAll();
  }

  @POST
  @Consumes(MediaType.APPLICATION_JSON)
  public void addUser(User user) {
    userService.save(user);
  }
}

@Path definuje cestu, @GET je pre čítanie údajov a @POST pre ich pridanie. @Consumes a @Produces určujú dátové formáty.

5. Nasadenie na Tomcat a testovanie

Po vytvorení aplikácie ju môžete nasadiť na lokálny server Apache Tomcat. V Eclipse nastavte „Run on Server“, alebo manuálne skopírujte .war súbor do adresára webapps.

Testovanie môžete vykonať:

Chcete sa to naučiť prakticky?

Vyskúšajte náš kurz Java REST služby s Hibernate, kde sa naučíte vytvárať vlastné REST API, napojiť ho na databázu a vytvoriť jednoduchý frontend pomocou Angularu.

Ako začať programovať?

Úvod do programovania pre každého bez prechádzajúcich znalostí.

Stiahnite si náš ebook teraz výnimočne zdarma!!!

Viac informacií preberáme na kurze:

Kurz JAVAEEREST - Java REST - RESTful Web Services s Hibernate

Marián Knězek

 

Súvisiace články: