Java / JEE Web Developer for Object Oriented Programmers

Java Enterprise Edition (Java EE) is a powerful platform for building web applications. The Java EE platform offers all the advantages of developing in Java plus a comprehensive suite of server-side technologies. This course tells you what you need to know to design and build your own web applications. You'll learn the details of the key JEE technologies and how to leverage the strengths of each, with special focus on Servlets and JSPs. At the same time, you'll be learning about the big picture of Java EE and how to design web applications that are robust, efficient, secure, and maintainable. If you want to deliver an application on the web, you'll find this course essential.

Retail Price: $1,000.00

Next Date: Request Date

Course Days: 1


Request a Date

Request Custom Course


Course Objectives

You'll leave the course armed with the skills required to develop basic object-oriented applications written in Java, using sound coding techniques and best coding practices, with a specific focus on server-side development. This skills-focused course is about 50% hands-on lab to lecture ratio, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. 

Working in a hands-on learning environment led by our expert instructor, you’ll explore:

  • Java language fundamentals, its importance, uses, strengths and weaknesses
  • The basics of the Java language and how it relates to OO programming and the Object Model
  • How to use Java exception handling and logging features
  • Use classes, inheritance and polymorphism
  • Collections, generics, autoboxing, and enumerations
  • The JDBC API for database access
  • Working with annotations
  • Designing and building robust and maintainable web applications
  • Creating dynamic HTML content with Servlets and Java Server Pages
  • Making Servlets and JSP work together cleanly

 

Course Prerequisites

This is an introductory level training course, designed for experienced OO developers (such as C++ or SmallTalk) that need to extend their skills in web development and understand the basic architecture of a JEE web application and/or implement a web application, taking advantage of what JEE brings to the table.

Take After: Our core Java training courses provide students with a solid foundation for continued learning based on role, goals, or their areas of specialty.  Our object oriented, Java developer learning paths offer a wide variety of follow-on courses such as:

  • Continued Java & Java EE training: Spring, Microservices, RXJava, REST, Java for Web, Web Services, Tuning, Patterns & more
  • TDD / Test Driven Development, JUnit / Unit Testing, Agile development training
  • Secure Java Coding / Java Security and secure application web development training
  • Mobile developer / Android training
  • Please contact us for recommended next steps tailored to your longer-term education, project, role or development objectives.

Course Agenda

 

Part One: Core Java Programming

Session: Java: A First Look

Lesson: The Java Platform

  • Java Platforms
  • Lifecycle of a Java Program
  • Responsibilities of JVM
  • Documentation and Code Reuse

Lesson: Using the JDK

  • Setting Up Environment
  • Locating Class Files
  • Compiling Package Classes
  • Source and Class Files
  • Java Applications

Session: Getting Started with Java

Lesson: Writing a Simple Class

  • Classes in Java
  • Class Modifiers and Types
  • Class Instance Variables
  • Primitives vs. Object References
  • Creating Objects

Lesson: Adding Methods to the Class

  • Passing Parameters Into Methods
  • Returning a Value From a Method
  • Overloaded Methods
  • Constructors
  • Optimizing Constructor Usage

Lesson: Language Statements

  • Operators
  • Comparison and Logical Operators
  • Looping
  • Continue and Break Statements
  • The switch Statement
  • The for-each() Loop

Lesson: Using Strings

  • Strings
  • String Methods
  • String Equality
  • StringBuffer
  • StringBuilder

Lesson: Specializing in a Subclass

  • Extending a Class
  • Casting
  • The Object Class
  • Default Constructor
  • Implicit Constructor Chaining

Session: Essential Java Programming

Lesson: Fields and Variables

  • Instance vs. Local Variables: Usage Differences
  • Data Types
  • Default Values
  • Block Scoping Rules
  • Final and Static Fields
  • Static Methods

Lesson: Using Arrays

  • Arrays
  • Accessing the Array
  • Multidimensional Arrays
  • Copying Arrays
  • Variable Arguments

Lesson: Java Packages and Visibility

  • Class Location of Packages
  • The Package Keyword
  • Importing Classes
  • Executing Programs
  • Java Naming Conventions

Session: Advanced Java Programming

Lesson: Inheritance and Polymorphism

  • Polymorphism: The Subclasses
  • Upcasting vs. Downcasting
  • Calling Superclass Methods From Subclass
  • The final Keyword

Lesson: Interfaces and Abstract Classes

  • Separating Capability from Implementation
  • Abstract Classes
  • Implementing an Interface
  • Abstract Classes vs. Interfaces

Lesson: Exceptions

  • Exception Architecture
  • Handling Multiple Exceptions
  • Automatic Closure of Resources
  • Creating Your Own Exceptions
  • Throwing Exceptions
  • Checked vs. Unchecked Exceptions

Session: Java Developer's Toolbox

Lesson: Utility Classes

  • Wrapper Classes
  • The Number Class
  • Random Numbers
  • Autoboxing/Unboxing
  • The Date Class

Lesson: Inner Classes

  • Member Inner Classes
  • Local Inner Classes
  • Anonymous Inner Classes
  • Anonymous Subclassing

Lesson: Enumerations and Static Imports

  • Enumeration Syntax
  • When You Should Use Enumerations
  • Using Static Imports
  • When You Should Use Static Imports

Session: Collections and Generics

Lesson: Introduction to Generics

  • Generics and Subtyping
  • Bounded Wildcards
  • Generic Methods
  • Legacy Calls To Generics
  • When Generics Should Be Used

Lesson: Collections

  • Characterizing Collections
  • Collection Interface Hierarchy
  • Iterators
  • The Set Interface
  • The List Interface
  • Queue Interface
  • Map Interfaces
  • Using the Right Collection
  • Collections and Multithreading

Part 2: Developing Java EE Applications

 Session: Java Application Development

Lesson: Introduction to Annotations

  • Annotations Overview
  • Working with Java Annotations

Session: Java EE Application Architecture

Lesson: Technical Overview of Java EE

  • Common Themes In JEE Framework
  • JEE Containers and Components
  • JEE Containers
  • JEE Platform Roles
  • Annotations
  • Dependency Injection

Session: Web Applications

Lesson: Understanding Web Applications

  • Java EE Application Modules
  • Enterprise Application Archive (EAR)
  • Enterprise JavaBean Archive (JAR)
  • Web Application Archive (WAR)

Lesson: Configuring Web Applications

  • Mapping an HTTP Request to a Resource
  • The web.xml File
  • Annotations

Session: Developing Servlets

Lesson: Introduction to Servlets

  • Life Cycle of Servlets
  • HttpServlet doXXX Methods
  • HttpServletRequest Methods
  • HttpServletResponse

Lesson: Debugging Java EE Applications

  • Breakpoints
  • Running a Server in the Debug Mode
  • Variables View
  • Change Variable Value

Lesson: Processing Input Data

  • Form Processing with Servlets
  • HTML Form
  • LoginServlet doPost

Lesson: Server-side Control

  • Request Dispatcher
  • Forward the processing
  • Include processing
  • HTTP Request Information
  • Threading and Data

Lesson: Client-side Control

  • Setting Status Codes
  • Setting Headers
  • sendRedirect
  • Supporting Persistent Connections
  • Dynamic Content Pushing

Lesson: Session Management

  • Tracking Problem – Stateless HTTP
  • Data Problem – Session Data
  • Cookie Behavior; Retrieving Cookies
  • URL Rewriting
  • Web Container Manages Session Instances
  • Cookie-Based Sessions
  • Getting Rid of Http Sessions

Lesson: Application and Session Events (Optional)

  • Event Listener Model
  • Life Cycle Events in a Web-Application
  • Type of Events

Session: Filters

Lesson: Overview of Filters

  • Single Filter
  • Filter Life Cycle
  • Cascading Filters

Lesson: Filtering Requests and Responses (Optional)

  • Request Wrapper
  • Process the Request
  • Filter the Response
  • Response Wrapper

Session: Developing JavaServer™ Pages

Lesson: Introduction to JSPs

  • Separating Presentation from Model
  • Lifecycle of a JSP
  • JSP Scripting: Declarations; Expressions; Scriptlets
  • &
  • Directives
  • JSP Actions
  • JSPs or Servlets?

Lesson: JSP Implicit Objects

  • Implicit Objects
  • Attributes
  • Session Attributes
  • Exception Handling

 Session: Database Integration: JDBC and Java EE

Lesson: JDBC and Its Position in Java EE

  • JDBC in JEE
  • Programming with DataSources
  • JNDI names
  • DataSource Programming Best Practices

Lesson: JDBC Data Access API

  • Statements
  • PreparedStatements
  • ResultSet
  • Executing Inserts, Updates, and Deletes
  • Mapping SQL Types to Java Types
  • CallableStatement

Lesson: The DAO Pattern

  • Data Access Object (DAO)
  • DAO Structure
  • The DAOFactory
  • Complete UML Diagram


Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com


Request a Date