How do I learn Java EE

The Java Platform Enterprise Edition 8 or Java EE 8 was released last year, along with Java 9 in September 2017. If you are a Java developer or someone who wants to learn Java EE for web development and looking for some courses to kickstart your learning, then you have come to the right place. In this article, I am going to share five awesome Java EE courses that cover both Java EE 7 and Java EE 8. If you are wondering what Java EE is and what Java EE 8 brings into the table, let me give you a brief overview of Java EE.

The Java EE is actually a collection of Java technologies and APIs designed to support "Enterprise" Applications, which can generally be classified as large-scale, distributed, transactional and highly-available applications designed to support mission-critical business requirements.

It contains some of the most popular Java technologies you have heard of, like Servlet, JSP, EJB, JAX-RS, JDBC, JNDI, JMX, Java Mail, JTA, JTS, JAF, XML, etc.

Also, the new version of Java EE 8 brings support for Java Servlet 4.0 API with HTTP/2 support, enhanced JSON support including a new JSON binding API, a new REST Reactive Client API, Asynchronous CDI Events, a new portable Security API, Server-Sent Events support (Client & Server-side), and — most importantly — support for Java SE 8 new features (e.g. Date and Time API, Streams API, and annotations enhancements).

Another important thing to know about Java EE 8 was the last release of Java EE from Oracle, and now, Oracle has moved Java EE to an open-source foundation (Eclipse Foundation) and it's called Jakarta EE.

Why did this happen? Well, Oracle thought that moving into an open source foundation would increase developers participation, but they wanted to control the Java trademark, hence Java EE becomes Jakarta EE.

Best Java EE Courses for Beginners and Experienced Devs

Until a couple of years ago, I personally liked to read and learn from books, but after I joined a couple of courses on Udemy and Pluarlsight (Netflix for software developers), my perception changed. Now, I start with an online course and then read a book to further solidify my knowledge.

Now that you know what Java EE is, let's get into these courses and help you learn Java EE. If you are a Java developer working in the Java EE space, then you can benefit from these courses.

Java EE 7 Fundamentals

Even though Java EE 8 is the latest version, Java EE 7 is still the most popular Java EE version. Most companies are running their enterprise application on Java EE 6 and Java EE 7 with migration to Java EE 8 slowly taking place.

If you happened to work on the existing Java EE 7 application and wanted to better maintain your application, then this is the perfect course for you.

In this course, you will 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

It's also one of the most comprehensive courses, created by Antonio Goncalves, who is an authority on Java EE space and also the author of best-seller Beginning Java EE 7 book.

The Java EE Course: Build a Java EE App From Scratch

This is a great course for all the developers who love project-based learning — I know I certainly do. As per my personal experience, I learn most when I do a project and apply whatever theory and practical I have learned from the course and that's why I recommend this course.

You will build a full Java EE airline management application from scratch and learn Java EE theory and practice during the process.

While building this course, you will learn key Java EE technologies, like EJB, to build robust backend and service layers, JPA to interact between applications and databases, servlets and JSP for building controller and user interface, and REST web services that allow remote applications and JavaScript to interact with an application.

You will also learn about resource and dependency injections in Java EE, which is important for writing clean code, which is both easier to extend and test.

Java EE Made Easy: Patterns, Architecture, and Frameworks

This is probably the most popular Java EE course on Udemy, with more than 5000 students already enrolled on it.

The course provides a nice overview of all the Java EE technologies, like JPA, JDBC, ORM, JNDI, EJB, JTA, DTO, VO, JAXB, JAX-RS, JAX-WS, AOP, and the dependency injection.

And, more importantly, you will get an overview of important Java EE patterns, like Front Controller, View Helper, Composite View, Context Object, Intercepting Filter, Domain Model, Facade, DTO/VO, DAO — Data Access Object, and Service Activator.

The patterns are also grouped by the layer they are used in, which makes it easy for you to remember and use them.

Overall, this is a perfect course for someone who is developing a web application with Java EE and wants to understand the big picture, as well as experienced Java developers who want to master Java EE patterns.

Java EE With Vaadin, Spring Boot, and Maven

This is one of the best and most modern Java EE course you will find on Udemy. As the title suggests, the course will teach you quite a few technologies, like Vaadin Framework, Spring, Spring Security, Spring Boot, Maven, JPA, JBoss — WildFly, etc.

But, most importantly, it follows a top-down approach, i.e. it first shows you the project you are going to build and then explains how you will build that by teaching each and every technology involved in creating that project.

Even if you are familiar with Spring and Maven, you will improve your understanding of these platforms.

It's also a CA-comprehensive course, with more than 18 hours of content. You will learn a lot of things like design patterns, best coding practices, and how to create a maintainable, robust software.

As I said at the start of this post, the final project is great and will teach you a lot. It will also give you a chance to apply whatever you have learned from the course.

 What's New in Java EE 8

Java EE 8 has brought some really cool features like Servlet 4.0 API, HTTP 2.0 support and a new JSON binding API. Apart from that, it also supports those ultra useful Java SE 8 features, like Stream and new Date and Time API, and there is no better way to learn those feature in quick time than joining this course.

In this course, you'll first learn about 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

You will also explore Java's completely new Security API, improving upon the hard-to-use and often container-specific security mechanisms. Additionally, you'll also learn about major updates to Java EE technologies in this release, such as JPA 2.2, CDI 2.0 and JSF 2.3 — all in just under two hours!

If you prefer the book and want a more comprehensive coverage, then you can also check out the Java EE 8 CookBook, one of my favorite how-to guides to learn Java EE 8.

That's all about some of the best Java EE courses to learn online. If you think Java EE is dead, then you are wrong, it's very much alive and kicking with the new Java EE 8 release. There are also tons of companies using Java EE and they are not going anywhere.

Useful Resources for Programmers

5 Free Spring Framework Courses for Java Developers

Top 5 Courses to learn Web Development in 2018

10 DevOps Courses for Senior Java Developers

Top 5 Courses to learn ReactJS for Web Developers

Top 5 Courses to Learn Spring Boot in 2018

Best Apache Kafka Courses - 2018

5 Courses to Learn React Native in 2018

Top 5 Courses to Learn Python in 2018

Top 10 JavaScript Tutorials and Courses for Web Developers

Thanks for reading this article! If you find these Java EE courses useful, then please share with your friends and colleagues. If you have any questions or feedback, then please drop a note below.