Accessing Relational Databases with Quarkus
Map and query your entities from relational databases using JPA and Panache ORM
Description
This course is for Quarkus developers who want to discover how Quarkus handles relational databases. It’s a mixture of slides and code so you can “Understand and Practice” at the same time. This way, you learn the theory, and then put it into practice by developing an application step by step.
In this course you will develop a Quarkus applications maps and queries different kind of persistent objects to several relational databases. After introducing JDBC, JPA and Panache ORM, you will make sure your development environment is set up, and you will go from bootstrapping three Quarkus applications, developing and refactoring a rich business model, map and query these objects to a Postgres database. The different steps you’ll go through are:
Understand JDBC, JPA and Panache ORM
Understand SQL, JPQL and Simplified Panache JPQL
Understand the differences between Panache Active Record and Panache Repositories
Check your development environment
Bootstrap three Quarkus applications:
o POJOs and JDBC with MySQL
o JPA Entities with MariaDB
o Panache ORM Entities with PostgresSQL
Test and refactor these applications so they have dependencies between them
Map persistent objects to a relational database (with annotations and XML)
Map inheritance and relationships
Query persistent objects using JPQL and Simplified Panache QL
Expose data in JSON using REST endpoint with JAX-RS and JSON-B
Handle transactions
Visualise data in HTML using Qute templates and Twitter Bootstrap
Use Quarkus profiles to switch between database
Execute the application in dev/test/production mode thanks to DevServices and Docker
At the end of the course you’ll get a good understanding on how to develop a data centric application with Quarkus. You will be able to bootstrap, develop, package and execute an application that accesses a relational database, but most important, take Quarkus to your next project.
Good luck for the course, and please reach out if you need any help or if you have any request: I’m here to help!
What You Will Learn!
- Understand the persistence ecosystem and how Quarkus supports it
- Bootstrap three data-centric applications with Quarkus
- Develop, configure and test each application separately using JDBC, JPA, Panache ORM, JUnit and RestAssured
- Persist objects into MySQL, MariaDB, H2 and PostgresSQL databases
- Use JPA to map persistent objects (columns, tables, inheritance, relationships)
- Use JPQL and Simplified Panache QL to query persistent objects
- Use JAX-RS and JSON-B to expose data through REST endpoints
- Use Qute templates to visualise data in HTML
- Beautify the Qute templates with Twitter Bootstrap
- Use Docker through TestContainers and DevServices to test the application
- Build and execute the application using several Quarkus profiles
Who Should Attend!
- Java developers who know Quarkus
- Quarkus developers curious about relational databases
- Back-end Java developers willing to access data in an object way
- Spring Boot or Micronaut developers wanting to compare their toolkit with Quarkus