Back-end & frameworks

Jakarta EE: enterprise web applications in Java

Servlets, JSP, EJB, JPA, web services and deployment: the enterprise Java platform.

Request this program
Duration
35 h · 5 days
Level
Intermediate
Format
On site · Remote · Blended
Max. group size
12 participants

Overview

This program presents the Jakarta EE platform (formerly Java EE) for the web and enterprise applications. Participants develop servlets and JSPs, manage the application context, discover EJB components, persist data with JPA, expose REST services and deploy on an application server. The week ends with a capstone project.

Who this program is for

  • Java developers wishing to master the enterprise platform
  • Teams maintaining existing Java applications
  • Students and professionals upskilling

Prerequisites

  • Practical knowledge of Java
  • Notions of HTML

Learning objectives

  • Describe the n-tier architecture and Jakarta EE components
  • Develop servlets, filters and JSPs
  • Manage sessions and the application context
  • Persist with JPA and JPQL
  • Expose REST services
  • Build, deploy and secure with Maven
  • Monitor and log an application

Detailed curriculum

10 modules · 35 h · 5 days

Day 1
Jakarta EE platform and architecture3.5 h
50% theory · 50% practice
  • Overview of the platform
  • N-tier architecture and MVC
  • Application servers and containers
  • Maven: structure and lifecycle
  • WAR and EAR packaging
Servlets3.5 h🛠 1 workshop
30% theory · 70% practice
  • Servlet lifecycle
  • Requests, responses and headers
  • Sessions and cookies
  • Filters and listeners
  • Error handling
🛠 Hands-on workshops
First web application1.5 h

Develop a servlet-based application.

✅ Deliverable : A deployed application
Day 2
JSP, EL and JSTL3.5 h
50% theory · 50% practice
  • JSP syntax and implicit objects
  • Expression Language
  • JSTL
  • Passing data from the controller to the view
  • Architecture best practices
Faces and EJB3.5 h🛠 1 workshop
30% theory · 70% practice
  • Introduction to Jakarta Faces
  • Session, entity and message EJBs: roles
  • Injection and CDI
  • Declarative transactions
  • Choosing your technologies
🛠 Hands-on workshops
Business services1.5 h

Isolate business logic in components.

✅ Deliverable : An injectable business layer
Day 3
Persistence: JDBC and JPA3.5 h🛠 1 workshop
30% theory · 70% practice
  • JDBC and JNDI
  • JPA entities and relations
  • JPQL and the Criteria API
  • Cache and performance
  • Transactions
🛠 Hands-on workshops
Persistence layer2 h

Map the project's model with JPA.

✅ Deliverable : Tested entities and repositories
Web services and real time3.5 h
50% theory · 50% practice
  • REST services with JAX-RS
  • JSON serialization
  • Overview of SOAP
  • WebSockets
  • Documenting and testing services
Day 4
Messaging and deployment3.5 h
50% theory · 50% practice
  • JMS: queues and topics
  • Monitoring with JMX
  • Server deployment and configuration
  • Logging
  • Environment variables
Security, clustering and monitoring3.5 h🛠 1 workshop
30% theory · 70% practice
  • Authentication and roles
  • Securing communications
  • Clustering principles
  • Monitoring and diagnostics
  • Advanced Maven
🛠 Hands-on workshops
Hardening1 h

Secure the project's application.

✅ Deliverable : A security configuration
Day 5
Object mapping and tools3.5 h
50% theory · 50% practice
  • Entity / DTO transformation
  • Mapping libraries
  • Module organization
  • Integration tests
  • Code quality
Capstone project3.5 h🛠 1 workshop
30% theory · 70% practice
  • Scoping the application
  • Pair development
  • Deployment
  • Code review
  • Presentation
🛠 Hands-on workshops
Enterprise project3 h

Build a complete enterprise web application.

✅ Deliverable : A packaged and presented application

Tools and technologies

IntelliJ IDEAJavaMavenMySQLPostman

Teaching methods

  • Alternating short lectures and hands-on work
  • Live demonstrations by the trainer
  • Capstone project built throughout the modules
  • Group corrections and discussion of best practices

Assessment

  • Hands-on exercises corrected in each module
  • Mini-project completed at the end of the course
  • Knowledge-check quiz

Required equipment

  • A computer with an internet connection
  • A recent JDK, Maven, an application server and a Java IDE

Resources provided

  • Course materials and repository of corrected exercises

Career outcomes

  • A packaged and deployed enterprise web application
  • An understanding of the enterprise Java ecosystem
  • The ability to work on an existing Jakarta EE project

Related video courses

My video courses that go with this program, to get ready for the training or to review afterwards. Free with an account.