Java EE Foundations

Authors: Sekhar Srinivasan, Antonio Goncalves, Sander Mak, Paul O'Fallon, Alex Theedom

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


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

Oct 28, 2015 / 1h 9m

Beginner • 1h 9m

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 taking a 10,000 foot view of the Java EE landscape as well as showing some details of its programming model.

Table of contents
  1. Course Overview
    1m 50s
  2. Java EE: The Big Picture
    21m 14s
  3. What Is Java EE?
    26m 41s
  4. Is Java EE Right for Your Organization?
    19m 36s

Java EE: Getting Started

by Antonio Goncalves

Jun 22, 2017 / 5h

Beginner • 5h

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
    2m 29s
  2. Java EE: Getting Started
    11m 53s
  3. Setting up the Java EE Environment
    17m 41s
  4. Bootstrapping the Java EE Application
    14m 11s
  5. Defining the Domain Model
    17m 31s
  6. Adding a Transactional Repository
    22m 47s
  7. Testing the Java EE Application
    18m 42s
  8. Validating Data
    13m 20s
  9. Injecting Beans
    15m 14s
  10. Exposing a REST Service
    31m 34s
  11. Documenting the REST Service
    20m 13s
  12. Setting up the Angular Environment
    15m 58s
  13. Bootstrapping the Angular Application
    18m 26s
  14. Designing the User Interface
    27m 44s
  15. Navigating Through Components
    18m 13s
  16. Invoking the REST Service
    22m 48s
  17. Revisiting the Application
    11m 32s

Java EE 7 Fundamentals

by Antonio Goncalves

Aug 12, 2016 / 5h 25m

Beginner • 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
    2m 15s
  2. Introduction
    16m 43s
  3. Understanding Java EE
    27m 26s
  4. Creating a Common Application Tier
    1h 4m 41s
  5. Addressing Business Concerns
    1h 15m 46s
  6. Implementing Web Applications
    49m 24s
  7. Interoperating with External Services
    1h 15m 43s
  8. Putting It All Together
    13m 33s

What's New in Java EE 8

by Sander Mak

Jan 30, 2018 / 1h 59m

Intermediate • 1h 59m

Start Course

There are many new features Java EE 8. In this course, What's New in Java EE 8, you'll learn about Java's completely new Security API, improving upon the hard-to-use and often container-specific security mechanisms. First, you'll discover the brand-new JSON-B, an API for binding Java objects to JSON, and vice versa. With very little code, you'll explore how you can generate and consume JSON without any third-party libraries. Besides new technologies, many existing Java EE technologies got updated with Java EE 8 as well. Servlet 4.0, for example, now supports HTTP/2 and Server Push. JAX-RS 2.1, the technology for RESTful endpoints in Java EE, now also implements the Server-sent Events web standard. Additionally, you'll see all major updates to Java EE technologies in this release such as JPA 2.2, CDI 2.0 and JSF 2.3. Finally, you'll learn about the future of Java EE. Oracle is moving Java EE to an open-source foundation, which means the future of Java EE will be more open, and at the same time maybe less predictable. By the end of this course, you'll be ready to explore and use Java EE 8 all on your own.

Table of contents
  1. Course Overview
    1m 57s
  2. Java EE 8 Introduction
  3. Web Technologies
    33m 30s
  4. JAX-RS 2.1
    27m 40s
  5. Data Technologies
    21m 53s
  6. CDI 2.0 and the New Security API
    18m 6s


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 JPA, Bean Validation, and RESTful Services in this section.


Java Persistence API (JPA) 2.1

by Antonio Goncalves

May 19, 2014 / 3h 43m

Intermediate • 3h 43m

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, you will learn the principle of object-relational mapping (ORM) and how to use Java Persistence API (JPA) to map your Java objects into relational databases.

Table of contents
  1. Course Overview
    1m 54s
  2. Introduction
    22m 33s
  3. Understanding Java Persistence API
    16m 41s
  4. Managing Elementary Entities With JPA
    40m 25s
  5. Relationships and Inheritance
    41m 27s
  6. Querying Entities
    37m 5s
  7. Entity Lifecycle, Callbacks, and Listeners
    26m 29s
  8. JPA 2.1 Within Java EE 7
    36m 27s

Bean Validation 1.1

by Antonio Goncalves

Jan 28, 2014 / 2h 31m

Intermediate • 2h 31m

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
    1m 50s
  2. Introduction
    14m 49s
  3. Understanding Bean Validation
    10m 45s
  4. Validating Built-in Constraints
    16m 47s
  5. Defining our own Constraints
    17m 7s
  6. Messages, Groups and Payloads
    15m 53s
  7. Advanced Topics
    39m 41s
  8. Bean Validation 1.1 within Java EE 7
    34m 20s

Java EE: Programming Servlets

by Sekhar Srinivasan

Jul 6, 2016 / 4h 26m

Beginner • 4h 26m

Start Course

Web application development can be made easier by using Java servlets. In this course, Java EE: Programming Servlets, you will begin with a complet overview of servlet architecture and lifecycle. First, you'll see the configuration of a Tomcat webserver in Eclipse and you'll learn how to read the request and response headers. Next, you'll learn how filters are applied to servlets and see many details about tracking session data, web annotations, and globalizing servlets. Finally, you'll go over asynchronous programming in servlets, debugging, packing, and deployment of servlets. By the end of this course, you will have a much more complete understanding of how web development using Java servlets works. Software required: Tomcat and Eclipse.

Table of contents
  1. Course Overview
    1m 21s
  2. Introduction
    22m 7s
  3. Building and Deploying Your First Servlet
    11m 2s
  4. Working with Form and Query String Data
    26m 25s
  5. Handling HTTP Requests and Responses
    33m 32s
  6. Intercepting HTTP Request with Filters
    23m 25s
  7. Handling Exceptions in Servlets
    8m 23s
  8. Tracking Session Data
    45m 54s
  9. Receiving and Processing File Uploads
    10m 51s
  10. Packaging Servlets for Deployment
    13m 17s
  11. Debugging Servlets
    13m 47s
  12. Globalizing Servlets
    25m 4s
  13. Providing Servlet Metadata Using Annotations
    19m 4s
  14. Understanding Asynchronous Servlet Processing
    12m 13s


This section contains some of the more advanced concepts. Learning about Servlets, CDI, Asynchronous RESTful services will make your Java EE skills complete.


Context and Dependency Injection (CDI 1.1)

by Antonio Goncalves

Mar 24, 2015 / 3h 44m

Intermediate • 3h 44m

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
    1m 55s
  2. Introduction
    17m 48s
  3. Understanding Context and Dependency Injection
    20m 24s
  4. Injection With CDI
    38m 13s
  5. Producers and Disposers
    31m 51s
  6. Interceptors, Decorators, and Events
    51m 17s
  7. Bringing the Web Tier and Service Tier Together
    30m 12s
  8. CDI 1.1 Within Java EE 7
    32m 35s

Building Asynchronous RESTful Services With Jersey

by Paul O'Fallon

Jun 13, 2014 / 3h 11m

Advanced • 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
    23m 53s
  2. Testing with JerseyTest
    17m 24s
  3. Dependency Injection and POST Support
    18m 11s
  4. Asynchronous RESTful Resources
    18m 12s
  5. Jackson for JSON and XML
    51m 15s
  6. Validation, Exceptions, and Conditional GET Support
    25m 30s
  7. Adding PATCH and If-Match Support
    14m 59s
  8. Filters in Jersey
    22m 1s

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.

Register for FREE. Get your Pluralsight IQ.

You’ll get unlimited access to adaptive skill assessments that help you validate your skills in as little as 5 minutes, and you'll get to see the Pluralsight platform first-hand.

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 activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit