Java EE Foundations


Java EE Foundations

Authors: Antonio Goncalves, Kevin Jones, Sarah Holderness, Paul O'Fallon, Grant Little

The Java Enterprise Edition (Java EE) is a Java platform built on top of the Java Standard Edition (Java SE). It provides a Runtime environment and an API. Java EE is the popular... Read more

What you will learn

  • Java EE’s place and purpose
  • Java EE Fundamentals
  • Java Persistence API (JPA)
  • Context and Dependency Injection (CDI)
  • Enterprise JavaBeans
  • Bean Validation
  • RESTful Services
  • Servlets
  • Asynchronous RESTful Services
  • Jersey


It is recommended that you have basic Java knowledge.


In this section, you will explore Java EE, how it fits into the Java software development landscape, and how you could use it to build your own large-scale applications.

Java EE: The Big Picture

by Antonio Goncalves

Mar 18, 2020 / 1h 13m

1h 13m

Start Course

What is Java EE, how does it compare to the Java language, should you transition to it, and which type of application would benefit from it? This course answers those questions by exploring an overview of the Java EE landscape as well as showing some details of its programming model.

Table of contents
  1. Course Overview
  2. Java EE: The Big Picture
  3. What Is Java EE?
  4. Is Java EE Right for Your Organization?

Java Web Fundamentals

by Kevin Jones

Jun 5, 2019 / 3h 21m

3h 21m

Start Course

Many Java web frameworks, such as Struts, are built on top of the Servlet and JavaServer Page specifications and base libraries. To fully understand how these frameworks operate, and to be able to take full advantage of the facilities they offer, you should understand the foundations such frameworks are built on. This course takes you through building a web application using the base Servlet and JavaServer Page libraries. The course discusses the Model-View-Controller pattern using Servlets as the Controller and JavaServer Pages as the View. You will also learn how to hide complex UI interaction inside tag libraries. The course will show you how it is possible to build a web application using these fundamental technologies, and how other frameworks are built.

Table of contents
  1. Course Overview
  2. Introduction
  3. Writing Servlets
  4. JavaServer Pages
  5. The Expression Language
  6. The Java Standard Tag Library
  7. Writing Tag Libraries
  8. Event Listeners
  9. Writing Filters
  10. Asynchronous Programming

Java: Creating a Basic Web App

by Sarah Holderness

Dec 7, 2018 / 2h 35m

2h 35m

Start Course

Learn how to create a basic web application with the Java Language. In this interactive course, you'll learn how to create a Java Servlet, display dynamic data in a JSP page, organize your data with a Model class, and connect your application to a database to read and write data.

Table of contents
  1. Creating Our First Java Web App and Servlet9 Videos - 6 Challenges
  2. Creating Our First JSP Page7 Videos - 5 Challenges
  3. Creating A Java Book Class6 Videos - 5 Challenges
  4. Connecting to Our Model8 Videos - 5 Challenges
  5. Installing4 Videos - 0 Challenge

Java EE: Getting Started

by Antonio Goncalves

Jun 22, 2017 / 4h 59m

4h 59m

Start Course

Turn a blank page into a web application! In this course, Java EE: Getting Started, you'll learn how to develop a distributed web application based on two complementary technologies: Java EE and Angular. First, you'll begin by covering how to setup your development environment, design your domain model, map it to a relational database, bring transaction management, and then expose the business domain through a REST API. Along the way, you'll make sure the integration tests always pass. Finally, once the REST API is tested, documented, and up-and-running, you'll build an Angular front-end to interact with it through HTTP and JSon. By the end of this course, you'll have the fundamental knowledge to start building REST API's with Java EE and consuming them with Angular.

Table of contents
  1. Course Overview
  2. Java EE: Getting Started
  3. Setting up the Java EE Environment
  4. Bootstrapping the Java EE Application
  5. Defining the Domain Model
  6. Adding a Transactional Repository
  7. Testing the Java EE Application
  8. Validating Data
  9. Injecting Beans
  10. Exposing a REST Service
  11. Documenting the REST Service
  12. Setting up the Angular Environment
  13. Bootstrapping the Angular Application
  14. Designing the User Interface
  15. Navigating Through Components
  16. Invoking the REST Service
  17. Revisiting the Application


Now that you have a good grasp of what Java EE enables you to do, it’s time to move to the next step. You will get up close and personal with the design of Java EE applications, JPA, Bean Validation, and dependency injection with the courses in this section.

Java EE 7 Fundamentals

by Antonio Goncalves

Aug 12, 2016 / 5h 25m

5h 25m

Start Course

Java EE 7 has established itself as the preeminent Java stack for web and back-end developers. This code-focused course shows how to build a complete application covering most of the Java EE 7 specifications. You'll learn about how the Java EE platform has progressed through its history to the modern platform it is today, the foundations of building a web application in Java EE, and how to interoperate Java EE applications with external services. You'll also learn about architectural best practices when building a Java EE application. By the end of this course, you'll have a solid foundational for building Java EE applications of your own.

Table of contents
  1. Course Overview
  2. Introduction
  3. Understanding Java EE
  4. Creating a Common Application Tier
  5. Addressing Business Concerns
  6. Implementing Web Applications
  7. Interoperating with External Services
  8. Putting It All Together

Java Persistence API 2.2

by Antonio Goncalves

May 10, 2019 / 4h 15m

4h 15m

Start Course

Applications are made up of business logic, interaction with other systems, user interfaces . . . and data. Most data manipulated by our Java applications have to be stored in databases, retrieved, and analyzed. In this course, Java Persistence API 2.2, you will learn the principle of object-relational mapping (ORM) and use Java Persistence API (JPA) to map your Java objects into relational databases.

Table of contents
  1. Course Overview
  2. Introduction
  3. Understanding Java Persistence API
  4. Managing Elementary Entities with JPA
  5. Relationships and Inheritance
  6. Querying Entities
  7. Entity Lifecycle, Callbacks, and Listeners
  8. JPA 2.2 within Java EE 7

Context and Dependency Injection (CDI 1.1)

by Antonio Goncalves

Mar 24, 2015 / 3h 43m

3h 43m

Start Course

Context and Dependency Injection takes its roots from injection frameworks and today has become a common ground for several Java EE specifications. In this course you will discover the CDI programming model and its concept of "loose coupling, strong typing." You will see that decoupling goes further by bringing interceptors and decorators to the entire platform.

Table of contents
  1. Course Overview
  2. Introduction
  3. Understanding Context and Dependency Injection
  4. Injection With CDI
  5. Producers and Disposers
  6. Interceptors, Decorators, and Events
  7. Bringing the Web Tier and Service Tier Together
  8. CDI 1.1 Within Java EE 7

Bean Validation 1.1

by Antonio Goncalves

Jan 28, 2014 / 2h 30m

2h 30m

Start Course

Processing, storing, and retrieving valid data is crucial for an application, that's why validation is a common task that needs to be done in several layers of your application. In this course you will learn how Bean Validation allows developers to write constraints in a standard way and apply them everywhere (bean, properties, constructors, method parameters, and return value). You will also see how Bean Validation can be integrated in other Java EE specifications.

Table of contents
  1. Course Overview
  2. Introduction
  3. Understanding Bean Validation
  4. Validating Built-in Constraints
  5. Defining our own Constraints
  6. Messages, Groups and Payloads
  7. Advanced Topics
  8. Bean Validation 1.1 within Java EE 7


Go further with Java EE by learning how to build RESTful web services and make use of the Java Messaging System (JMS) with the courses in this section

Building Asynchronous RESTful Services With Jersey

by Paul O'Fallon

Jun 13, 2014 / 3h 11m

3h 11m

Start Course

At the start of the course we establish a basic "Books" API -- an API that we continually improve and build upon throughout the course. We begin by deploying to Grizzly, and then implement a series of tests with JerseyTest. These tests are also continually expanded throughout the course. We explore Jersey's built-in dependency injection, and improve our API to take advantage of Jersey's async support. We switch from the built-in MOXy library in favor of Jackson to render our highly-tailored JSON and XML, and build a custom MessageBodyWriter along the way. We explore mapping exceptions to responses, and supporting conditional GET requests. We implement our own PATCH verb, and along with it, support for conditional updates as well. Finally we explore Jersey's support for filters and implement our own custom filter.

Table of contents
  1. GET-ing Started With Grizzly
  2. Testing with JerseyTest
  3. Dependency Injection and POST Support
  4. Asynchronous RESTful Resources
  5. Jackson for JSON and XML
  6. Validation, Exceptions, and Conditional GET Support
  7. Adding PATCH and If-Match Support
  8. Filters in Jersey

Practical Enterprise JMS Playbook

by Grant Little

Dec 11, 2017 / 1h 38m

1h 38m

Start Course

At the core of a lot enterprise grade Java applications is a JMS compliant messaging system. In this course, Practical Enterprise JMS Playbook, you'll learn how to use JMS within an enterprise, not only focusing on on the JMS APIs themselves, but also what other tools can aide you. First, you'll examine some techniques for creating performant and scalable JMS applications. First, you'll see examples of how to use some of the more advanced techniques and JMS features. Next, you'll discover how to avoid lots of boiler plate code and use existing frameworks such as Spring and JEE. When you've completed this course you will have the foundational knowledge of JMS that will help you as you apply your skills in an enterprise environment. Software required: Apache Maven, Apache ActiveMQ, Wildfly

Table of contents
  1. Course Overview
  2. Should We Be Using JMS?
  3. Setting up ActiveMQ
  4. Basic JMS Use Cases
  5. Designing Your JMS Solution for Production
  6. Using JMS with the Spring Framework
  7. Using JMS in a JEE Environment
  8. Administering and Monitoring Your JMS Environment
Offer Code *
Email * First name * Last name *
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By providing my phone number to Pluralsight and toggling this feature on, I agree and acknowledge that Pluralsight may use that number to contact me for marketing purposes, including using autodialed or pre-recorded calls and text messages. I understand that consent is not required as a condition of purchase from Pluralsight.

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit