Introduction

Who Is This Cloud Tutorial Series For?

Java EE in a Working Week is a Cloud Tutorial Series that aims to offer an introduction to Java Enterprise Edition 7 (Java EE 7). Our starting point for this complex topic will be the web profile first introduced in Java EE 6: a standardized subset of Java EE APIs that are intended specifically for web applications. This book will guide the reader through the step-by-step development of a web application based on web profile technologies.

Though this Cloud Tutorial Series will also impart plenty of information regarding the ways in which Java EE 7 has been improved in comparison to its predecessor, it has been envisioned primarily for beginners seeking a comprehensive introduction to Java EE in the current version rather than for experienced Java developers wishing to bring their knowledge up to date.

The book’s success depends on the possession of some general and some more specialist areas of knowledge by the reader.

General requirements include:

  • good knowledge of object-oriented programming with Java
  • basic knowledge of the Java SE API
  • basic knowledge of web technologies (HTTP, HTML, web server)
  • basic knowledge of databases and XML
  • basic knowledge of distributed systems
  • basic operating system knowledge

Special requirements include:

  • basic knowledge of Java annotations
  • basic knowledge of an integrated development environment for Java
  • knowledge of the operating system’s command line
  • basic principles of SQL

If you are not yet familiar with these more specialized concepts, you can pick up the necessary knowledge quite quickly in parallel to your study of the book. The general requirements, however, are somewhat broader in scope and represent knowledge that can generally only be acquired over a longer period of study.

We envision this book as being of particular use to the following groups (though this list is in no way intended to be exhaustive):

  • Web developers who possess Java knowledge but who have so far worked predominantly with alternative web programming languages such as PHP and ASP.NET
  • Java developers whose work to date has involved developing for other platforms (e.g. desktop or mobile devices)
  • Students of computer science or business information systems in the more advanced semesters of their Bachelor degree

Java EE is a powerful programming platform, and beginners can easily feel overwhelmed. This book aims, wherever possible, to “skim off” the more complex aspects of each topic and afford the beginner an overview of key information. This is intended to ease the reader in and maintain high levels of motivation.

Some of you reading this book will doubtlessly already be Java EE experts. In this case, we ask for your understanding regarding any lack of completeness that has resulted unavoidably from simplifications made. This is a compromise we have accepted consciously, both for didactic purposes and on the basis that a sound introduction leaves plenty of time for finer details and alternative methods later. The knowledge base afforded you by this book will also enable you to quickly get to grips with new aspects of Java EE.

A Note on Java EE 7

While Version 7 of Java EE includes many improvements to important component specifications (JSF, CDI, JPA, EJB), it is not important for beginners to understand them fully at this point. This Cloud Tutorial does not purport to educate readers in using these improved features, but to provide them with a sound and comprehensive introduction to Java EE as a whole. That being said, we will be deploying some of these innovations, including resource library contracts and HTML5 support. Theoretical sections at the end of every chapter will also address aspects of and improvements to Java EE 7 that are not encountered in the development phases.

We believe that the concept and scope of the book renders it ideal for newcomers to Java EE. It is intended to provide the reader with a broad but controlled introduction to the topic: to familiarize them with new possibilities offered by Java EE 7, to enable them to try out the highlights.

Additional Information on the Cloud Tutorial

The complete source code for the applications developed within this tutorial (“My-Campaign”) can be found on GitHub, the popular community platform for developers.

Structure of the Cloud Tutorial Series

The present tutorial provides a frame for the Cloud Tutorial Series. It is a kind of envelope that sets some fundamental conditions.

  • Chapter I of this envelope tutorial for the series is intended to afford the reader a brief theoretical overview of Java EE. In it, we will develop a target architecture to accompany us through the rest of the Cloud Tutorials.
  • Chapter II describes the application that is to be created. The description will focus on functional use cases and their processes as well as on domain classes and associated graphical interfaces.

The development of the software will be accomplished in multiple iterations. Each Cloud Tutorial of the series will cover one iteration and will end with a range of tasks. At the end of each iteration the web application is executable and usable, but of course does not yet fulfill all requirements defined in Chapter II. In general, if you are new to Java EE we recommend to work off the Cloud Tutorial Series sequentially. If you are already familiar with Java EE and want to learn more about a special topic (e.g. CDI) than it is also possible to access the appropriate tutorial, directly.

The first iteration is realized by the Cloud Tutorial JSF in a Day where the web interface is realized.

The architecture of the web application is improved in the second iteration provided by the Cloud Tutorial CDI in a Day.

The third iteration adds persistence to the application’s data and is described in the Cloud Tutorial JPA in a Day (coming soon).

The fourth iteration explained in the Cloud Tutorial EJB in a Day (coming soon) is dedicated to security aspects and transactional business logic.

The web application will be fully operational upon completion of the last iteration described in the Cloud Tutorial REST services in a Day (coming soon).

Now let’s Turn Geek!

Discussion

Use the message board below to give the authors your feedback or to discuss this page’s topic with other readers (in English please!). Please don’t expect the authors to answer directly, but they might update the content of this site according to your feedback.