877-277-2477
info@capstonecourseware.com
108. Overview of Java EE Development
Version 5.0.1

Book cover

This course provides a coherent, high-level explanation of the Java Platform, Enterprise Edition (Java EE): what sorts of software are created with Java EE; how software is developed for this platform; how it is deployed and put into production; how it can be administered. The course is designed specifically for non-programmers -- analysts, managers, technical writers, and anyone who desires a good conceptual understanding of Java EE while not needing to drill down into the details of particular APIs or runtime specifications. Developers may also find this course quite useful as a starting point for one or more of our courses in specific Java EE technology -- it gives a great sense of the big picture before one dives into the details of Servlets, JSP, JSF, EJB, or Java web services.

The course is presented seminar-style, with no hands-on exercises for students and no need for lab equipment. The instructor demonstrates several sample Java EE applications, including web applications, EJBs, JMS, and web services, and can go into source code and other details to suit the interests of the audience. But the focus is on architecture, and on boiling down a very complex system to its essential features: code portability, components and containers, metadata and declarative development. Students come to understand the roles that various Java EE technologies play in a multi-tier, enterprise application, and acquire the terminology and basic workings of each.

Prerequisites

  • Some prior experience with business software is assumed, but there are no formal prerequisites for this course.

Learning Objectives

  • Understand the role of Java EE in the development of enterprise software in the Java language.
  • Understand how Java EE facilitates integration of Java components with non-Java systems including relational databases, the World Wide Web, message queues, CORBA objects, and web services.
  • Appreciate the importance of the container/component architecture, which gives Java EE servers the ability to take a great deal of grunt-work off of the shoulders of the application.
  • Describe how containers are able to provide enterprise features to compliant application components, such as remote connectivity, scalability, availability, security, and transaction support.
  • Explain the use of source-code annotations and XML deployment descriptors as a way of reducing programming workload and communicating with the Java EE application server.
  • Understand the deployment process and know the general structure of web, EJB, and enterprise archive files.

Timeline: 1 day.

  • A 1/2-day timeline when presenting as a lead-in to other Java EE training for developers is also possible.

Server Support: GlassFish

  • This version of the course works with the GlassFish server. Our Java EE courses are available in variants that support various server products, including Tomcat, GlassFish, JBoss, and WebLogic. For more details, and to find a desired server-specific version of a course, see our server-support matrix.

Chapter 1. History and Overview

  • Structured Programming
  • Object-Oriented Programming
  • 4GLs and RAD
  • Java
  • Java EE and the Outside World
  • Versions Upon Versions

Chapter 2. Concepts

  • The Virtual Machine and Runtime
  • How Does It Work?
  • Containers and Components
  • Three Containers
  • Aspect-Oriented Programming
  • Java EE as an AOP Platform
  • Annotations
  • Deployment Descriptors
  • Remote Connectivity
  • Scalability
  • Availability
  • Security
  • Transactionality

Chapter 3. Technology

  • JDBC
  • Servlets
  • JavaServer Pages
  • Java Naming and Director Interface
  • The Component Environment
  • Multi-Tier Applications
  • JavaServer Faces
  • Enterprise JavaBeans
  • Java Persistence API
  • Ajax
  • Java Message Service
  • APIs for Web Services

Chapter 4. Tools, Standards, and Portability

  • Java IDEs
  • Web Servers and Containers
  • Application Servers
  • Standards and Portability
  • What Is and Isn't Standardized
  • Beyond Java EE

Chapter 5. Development and Administration

  • Development Process
  • Assembling WARs and EJB JARs
  • Assembling EARs
  • Verifiers
  • External Resources
  • Administrative Tools
  • Administrative Tasks
  • Remote Administration and Domains

Appendix A. Learning Resources

System Requirements

Hardware Requirements (Minimum) 1.0 GHz, 512 meg RAM, 1 gig disk space.
Hardware Requirements (Recommended) 2 GHz, 1 gig RAM, 1 gig disk space.
Operating System Tested on Windows XP Professional. Course software should be viable on all systems which support the Java EE 5.0 SDK.
Network and Security The instructor must be the administrator on his or her own machine; otherwise there are no security issues or requirements for this course.
Software Requirements All free downloadable tools.