
This video will give you an overview about the course.
The video shows how to implement business domain logic in Java EE and plain Java. It covers how Java EE encourages business-oriented solutions. Basic Java EE APIs is introduced.
The video shows the differences between the EJB and CDI APIs. It covers when to use which and what needs to be done in order to setup the managed beans.
The video shows CDI producers, their power and how to define and use them.
The video shows the necessity of and how to define and use CDI qualifiers. It covers how to define custom qualifier annotations.
The video explains the different scopes or managed beans. It covers both EJB and CDI, their differences and similarities.
The video explains how to model and implement domain events using CDI. CDI comes with a powerful eventing mechanism which allows to decouple event creation from event handling.
This video shows how to define JAX-RS resources that make an Java EE application accessible via HTTP. It covers how JAX-RS applications are bootstrapped and how Java types are translated into HTTP payloads.
This video shows how to declaratively marshal Java types to JSON definitions and back. It covers how JAX-RS integrates with JSON-B definitions out of the box.
This video shows how to programmatically marshal Java types to JSON definitions and back using JSON-P. It covers how JAX-RS integrates with JSON-P.
This video shows how to send custom HTTP responses with JAX-RS. Examples for custom responses are HTTP status codes or header fields.
This video shows how to validate HTTP messages using Bean Validation and JAX-RS. It covers how to define custom validation constraints that match the application business logic.
This video shows how to handle exception that occur within our application in JAX-RS.
This video shows how JPA is used to map domain entities to the database. It covers how to bootstrap JPA for enterprise applications and how to declaratively define persistence mappings.
This video shows how to define entity relations that are part of the business domain. It covers which JPA definitions are required to specify the relation mapping in the database tables.
This video shows how to define and use application server datasources. The datasources are used to access relational databases.
This video shows how to use technical transaction that handle database queries. It covers how exceptions that occur during the active transaction are handled.
This video shows how to define and bind interceptors. Interceptors are used to interrupt the execution of methods and inject custom logic.
This video shows how custom interceptors are bound and activated via custom interceptor binding annotations. This approach minimizes coupling in our application.
This video shows how to configure Java Enterprise application via CDI. It covers how CDI producers fulfill to define custom configuration requirements. The example configuration load the configured values from an application properties file.
This video shows how and when to use caching. It covers how to build a simple yet effective custom cache and includes an outlook to the JCache API.
This video shows how and when to include logging in enterprise applications. It covers the shortcomings of traditional logging, which other solutions are reasonable and possible.
This video shows how to define asynchronous EJB methods. It covers the possibilities and implications of asynchronous execution within EJBs.
This video shows how to define and fire asynchronous CDI events with both asynchronous EJB methods and CDI definitions.
This video shows what container-managed threads are, what the threading requirements for enterprise applications are and which Java EE functionalities support developers. It covers the required APIs to use container-managed threads.
This video shows how to define application timers via EJBs and CDI managed beans. It covers which APIs to use to define timers and scheduled jobs.
This video shows the motivations behind asynchronous JAX-RS resources and how to make use of them. It covers common use cases for this functionality.
This video shows how to access HTTP resources using the JAX-RS client. It covers how web targets are defined and used to send requests and read responses from and to Java types, respectively.
This video shows how to use the JAX-RS client to retrieve collection resources and automatically map them to corresponding Java collection types. It also covers path templates.
This video shows how to handle client exceptions and potential errors. It also covers how to make client invocations more resilient by defining different type of timeouts.
This video shows how to use the asynchronous and reactive JAX-RS client functionality. It covers how to use the CompletableFuture type in client invocations and the rx invocation builder.
This video shows how to use the JAX-RS API to define and implement Server-Sent Events (SSE) resources. It covers the required JAX-RS types and APIs.
This video shows how to consume Server-Sent Events (SSE) resources both on the command line and by using the JAX-RS SSE client. It also cover the last event ID HTTP header that controls which data is being resent.
This video shows how to use the Java EE’s WebSocket API to define server endpoints. It also covers how to define MessageDecoders and Encoders.
This video shows how to access WebSocket endpoints by the WebSocket API. It also covers how client connections are bootstrapped.
This video provides an overview of the entire course.
This video will help us learn why, what and how to select the design patterns.
In this video, we will learn the advantages of using design patterns while writing the code.
In this video, we will understand categories of design patterns from Gang of Four.
This video will help you learn how to select a design pattern for your requirement.
In this video, we will understand what factory pattern is and when we need to use factory pattern.
This video will help you understand when to use factory pattern using real-time scenario.
This video aims at helping you get well acquainted with how to programmatically implement factory pattern using real-time scenario.
In this video, you will understand what abstract pattern is and when we need to use abstract pattern.
This video will help you learn how to programmatically implement abstract pattern using real-time scenario.
In this video, you will understand what singleton pattern is and when we need to use singleton pattern.
This video aims at helping you explore the problems we might face when application is designed without using singleton pattern.
In this video, you will learn how to implement singleton pattern.
In this video, you will understand what decorator pattern is and when we need to use decorator Pattern.
This video will help you understand when to use decorator pattern using simple example.
This video aims at helping you understand when to use decorator pattern using real-time scenario.
In this video, you will Learn how to programmatically implement decorator pattern using real-time scenario.
In this video, you will understand what Façade pattern is and when we need to use Façade pattern.
This video will help you learn how to programmatically implement Façade pattern using real-time scenario.
In this video, you will learn how to create the Façade class and client application to use the Façade pattern.
In this video, you will understand what command pattern is and when we need to use command pattern.
This video will help you understand practical implementation of command pattern using real-time scenario.
This video aims at exploring the basics of observer pattern and when we need to use observer pattern.
In this video, you will understand practical implementation of observer pattern using real-time scenario.
This video provides an overview of the entire course.
You will get familiar with the microservice architecture, what it is and what does it bring to the table.
In this video, we will take a look at the common problems of the monolithic architecture and how the microservice architecture strives to solve them or reduce their effect.
In this video, we will learn how to begin the process of decomposing existing Java EE monoliths into microservices. Both design wise and technology wise.
In this video, we will get familiar with various Java (EE or otherwise) microservice frameworks.
In this video, we will set up the minimal development environment to start creating Java microservices.
In this video, we will create a new maven microservice project configured with Payara Micro.
In this video, we will build a CRUD REST API for the customer’s microservice data model backed by a standard database.
In this video, we will configure JAX-RS to use a different JSON implementation.
In this video, we will add a generic authentication and CORS filter, with the ability to create custom responses for errors in the API.
In this video, we will introduce a better structure and separation of concerns to our microservice with CDI.
In this video, we will decompose and split an existing monolithic application into microservices.
In this video, we will learn the impact of stateless vs. stateful microservice design in a highly scalable environment.
In this video, we will replace the database JDBC access with JPA to complete the first microservice.
In this video, we will create and build the orders microservice with the basic required functionality using Dropwizard and JPA for database access.
In this video, we will define system and custom metrics and expose them through the REST API.
In this video, we will complete the create order operation by integrating the required external microservice and monolith using HTTP with JAX-RS and JAX-WS.
In this video, we will use OpenID Connect to implement a cross platform SSO stateless solution.
In this video, we will reduce bugs and failures by adding and implementing automatic testing of microservices.
In this video, we will get familiar with the Spring and the Spring Boot Java ecosystem.
In this video, we will learn about the differences and similarities between Spring and Java EE as well as how to integrate the strengths of both of the ecosystems.
In this video, we will create and build the payments microservice with the basic required functionality using Spring Boot and JPA with Spring Data for database access.
In this video, we will reimplement the payments microservice JAX-RS REST API with Spring MVC REST and enable metrics with health checks.
In this video, we will integrate the payments microservice with the orders microservice and add custom health checks in order to finish the application.
In this video, we will get familiar with modern containers and Docker.
In this video, we will take existing microservices and package and run them with Docker Images and Containers.
In this video, we will Learn about scalable fault tolerant container management systems and why they’re needed, specifically Apache Mesos with DC/OS.
In this video, we will use existing Docker Images of microservices and deploy them on Mesos and DC/OS.
Java EE provides a standard set of specifications that can be used to develop standardized applications, independent of the vendor. Enterprise applications do not change that often, and hence we need a robust platform such as Java EE to ensure sustainability. To learn features and APIs in Java EE for building enterprise-ready applications, you’ll need to be familiar with programming in Java.
This comprehensive 3-in-1 course teaches you how to develop enterprise applications using the Java Enterprise platform and modern APIs. It covers each and every concept of the Java EE platform with the help of practical examples making it easy for you to understand and implement in your own applications.
This training program includes 3 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Learning Java EE 8, course starts off by exploring the core Java EE components. You will then learn about HTTP endpoints. You will also learn how to map domain entities with JPA. Next, you will understand how interceptors realize technical cross-cutting concerns. You will learn to access external systems. Finally, you will learn about the asynchronous communication protocol.
The second course, Design Patterns and Best Practices in Java EE 8, starts off with exploring various design patterns. You will then learn to work with categorizing design patterns. You will also work with creational patterns. Next, you will explore different types of behavioural patterns. Finally, you will learn the implementation of key patterns such as Façade, Singleton, Factory, Decorator, and Observer in Java EE.
The third course, Java EE 8 Microservices, begins with explaining the benefits of using the microservice architecture. You will then learn to decompose and refactor monolithic applications into microservices. You will also learn to create microservice with the best Java microservice frameworks such as Payara Micro, Dropwizard, and Spring Boot. Next, you will learn to implement RESTful services using JAX-RS 2.1 and Java EE 8. You will learn to monitor, test, secure, and integrate microservices with each other and existing monoliths. Further, you will learn to integrate Spring into a Java EE ecosystem. Finally, you will learn to package microservices into Docker containers making it suitable to run in a highly scalable cloud environment.
By the end of this Learning Path, taking the challenge of building a cloud-ready, enterprise application in the microservice architecture will be a walk in the park.
Meet Your Expert(s):
We have the best work of the following esteemed author(s) to ensure that your learning journey is smooth:
Sebastian Daschner is a Java freelancer working as a consultant, author, and a trainer. He is enthusiastic about programming and Java (EE). He is the author of the book Architecting Modern Java EE Applications. He participates in the JCP, helping to form the future standards of Java EE such as serving in the JAX-RS, JSON-P, and Config Expert Groups, and collaborating on various open source projects. For his contributions to the Java community and ecosystem, he was recognized as a Java Champion, Oracle Developer Champion, and double 2016 JavaOneRockstar. He is a regular speaker at international IT conferences such as JavaLand, JavaOne, or Jfokus.
Sekhar Srinivasan (Microsoft Certified Trainer) is a highly reputed trainer. He is well known for imparting unique techniques in training for the past 22 years. He has trained students on various Java technologies such as Core Java, JDBC, Servlets, JSP, JSF, Spring, Hibernate and also various Microsoft technologies and JavaScript frameworks. He is a firm believer of being constantly up to date with the upcoming technologies to deliver the best possible training he can. He provides extensive training programs such as classroom training, online training programs and is also an author with Pluralsight and Packt Publishing.
Tilen Faganel is the main developer of the frame KumuluzEE. He received the Java Duke's Choice Award Winner 2015. He is the head of development of integration solutions in high-tech start-ups Sunesis, and has worked on numerous projects developing advanced cloud applications for enterprises in Slovenia and abroad.