‏ ‏ ‎

1. Preface

HTL Leonding is a vocational college in Austria with about 1000 students and four departments:

  • Informatics

  • Media Engineering

  • Electronics

  • Medical Engineering

The curriculum in each department lasts five years. Quarkus is taught in Informatics and Media Engineering in the 4th and 5th grade. Quarkus ist the backend, the frontend is Angular (Media Engineering) or Android (Informatics)

2. 4th grade

department informatics: 3h department media engineering: 3h

assumption: The students have knowledge working with JavaSE, maven, git, uml, json.

Topic Contents

Java-ecosystem

IDE’s, maven, git-repositories

Introduction

  • Jakarta EE and Jakarta EE implementations,

  • microprofile and microprofile implementations

  • Quarkus - create a first project (hello world)

  • how to create a quarkus project (quarkus.io, ide-wizard, maven)

RESTful Resources

architectural constraints, http-methods, create a simple REST-Endpoint

REST with entities

  • JSON Processing in Java (JSON-B, JSON-P)

  • Create a simple REST-Endpoint with entities (CRUD)

  • use different clients to consume REST-service (curl, httpie, browser-plugin, Postman, Insomnia)

  • create automated tests (REST-assured, karate)

CDI

  • Introduction

  • CDI in Jakarta EE

  • CDI in Quarkus

Java Persistence API (JPA)

  • Entity states

  • Annotations

  • Entity Relationships

  • Configuration in quarkus

  • Transactions

  • JPA in quarkus vs. JPA in JavaSE

  • Queries

  • Lifecycle methods

  • Testing with jUnit, AssertJ-core und AssertJ-db

  • Repository-Pattern (and how to use in quarkus). Active Record Pattern only in theory.

  • Create a simple JPA-CRUD-app and automated testing

Panache in Quarkus

  • Repository pattern

  • Create a panache-CRUD-app

REST-Endpoints + JPA-Persistence

Create a backend w/ Panache and REST-Resources

REST-Clients with Quarkus

Create an REST-client-app w/ quarkus

Websockets

  • Simple Example w/ Websockets

  • Server-sent events

Messaging

  • Messaging - Introduction

  • Usage of Mosquitto w/ Quarkus

3. 5th Grade

Topic Contents

Securing a quarkus app w/ keycloak

Deploying a quarkus app

  • docker and docker-compose

  • kubernetes

grpc

Reactive Programming - first steps