Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Movie REST API med Jakarta EE 11

En modern RESTful webbtjänst för hantering av filmer, implementerad med Jakarta EE 11 Preview.

Funktioner

  • CRUD-operationer för filmer
  • Filtrering baserat på regissör och titel
  • Sökning baserat på speltid
  • Validering av indata
  • Felhantering med anpassade undantag
  • Containeriserad med Docker

Teknisk Stack

  • Jakarta EE 11 Preview
  • Jakarta Data för dataåtkomst
  • Jakarta Persistence (JPA) för ORM
  • Jakarta Bean Validation för validering
  • PostgreSQL som databas
  • Docker för containerisering

Projektstruktur

src/main/java/se/komplexjava/movie/
├── entity/
│   └── Movie.java
├── dto/
│   ├── CreateMovieDTO.java
│   ├── UpdateMovieDTO.java
│   └── MovieDTO.java
├── mapper/
│   └── MovieMapper.java
├── repository/
│   └── MovieRepository.java
├── service/
│   └── MovieService.java
├── resource/
│   └── MovieResource.java
└── exception/
    ├── ResourceNotFoundException.java
    └── ResourceNotFoundExceptionMapper.java

API Endpoints

  • POST /api/movies - Skapa en ny film
  • GET /api/movies - Hämta alla filmer
  • GET /api/movies/{id} - Hämta en specifik film
  • PUT /api/movies/{id} - Uppdatera en film
  • DELETE /api/movies/{id} - Ta bort en film

Sökparametrar

  • ?director= - Filtrera på regissör
  • ?title= - Filtrera på titel
  • ?minDuration=&maxDuration= - Filtrera på speltid

Bygga och Köra

Förutsättningar

  • Docker och Docker Compose
  • Java 17 eller senare
  • Maven

Bygga och Starta

  1. Klona projektet:
git clone <repository-url>
cd KomplexxJava
  1. Bygg och starta med Docker Compose:
docker-compose up --build
  1. Applikationen kommer att vara tillgänglig på:

Utveckling

För att bygga utan Docker:

mvn clean package

Testning

Kör tester med:

mvn test

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages