Skip to page content Skip to section menu Skip to site-wide navigation About Us | Consultancy | Training | Software | Publications | Open Source | Support | Open Standards | FAQ | Jobs
Site Style Info

Java Course Modules for In-house Training

Combine Modules for Customised Java Training

Most of our Java course modules are outlined below. They can be combined in different ways to produce a wide range of specialist Java courses. Our own "off the shelf" Java courses are, for example, built in this way.

With judicious selection, a purchasing company can build itself a bespoke Java training solution from these modules at a fraction of the usual cost.

The vast majority of modules and their hands-on exercises are delivered in a quarter day. A few exceptional modules last a half day, because cross-dependencies in their content dictate a specific sequence of progress.

Please ring our training advisors for help in assembling a course with appropriate content, speed of progress, prerequisite knowledge, and consistent subject matter, etc.


Listings of our Java Modules

Review of Object Oriented Concepts

  • Conventional vs Object Oriented Programming
  • Inheritance, Abstraction and Polymorphism

Getting Started with Java

  • Writing a Simple Class
  • Adding Methods to the Class
  • Language Statements:
    • operators
    • comparison and logical expressions
    • for, while and do
    • switch
  • Using Strings
  • Specialising in a Subclass
    • extending a class
    • overriding SuperClass methods
    • default constructor and implicit constructor chaining

Essential Java Programming

  • Fields and Variables
  • Using Arrays
  • Static Methods and Fields
  • Java Packages
  • Using the JDK

Advanced Java Programming

  • Inheritance and Polymorphism
  • Interfaces and Abstract Classes
  • Exceptions
  • Multithreading
  • JavaBeans

Java Developer's Toolbox

  • Utility Classes
  • Vector and Hashtable
  • Collections
  • Inner Classes
  • Java I/O

Graphical User Interfaces

  • Containers and Layout Managers
  • Writing Simple Graphical Applications
  • Writing Complete Graphical Applications

Java Application Development

  • File System Access
  • Networking
  • Database Connectivity - JDBC
  • Writing Java Applets

Enterprise Java Overview

  • Developing Java Servlets
  • Introduction to Java Server Pages (JSPs)
  • Java for the Enterprise

Introduction to Enterprise JavaBeans

  • Benefits of using EJB technology
  • Strengths and weaknesses of the EJB Specification
  • Services provided by J2EE/EJB servers
  • Comparison of JavaBeans and Enterprise JavaBeans

EJB Architecture

  • How containers work in an EJB server
  • Relationships between home, remote, EJBObject, and enterprise bean
  • Transaction, security, and naming service integration
  • Persistence management - containers
  • Understanding and comparing session and entity beans
  • The XML deployment descriptor
  • EJB application packaging - the JAR file

Overview of EJB 1.1 vs EJB 2.0

  • Availability of local interface access for better performance
  • Additional method support in home interfaces
  • Differences in entity bean implementations
  • Direct data model support in entity beans
  • Message driven beans
  • Deciding whether to use EJB 1.1 or EJB 2.0

Writing Session Beans

  • Structure of a session bean, leveraging inheritance
  • SessionBean methods and initializers
  • Use of UML to model bean creation
  • Best practises for SessionContext and re-use
  • Trade-offs between use of transient data and ejbPassivate
  • Statefull and stateless session beans
  • Effects of concurrency on session beans
  • Access to system services: file system and networking

Writing the EJB Interfaces

  • Home and remote interfaces
  • Transport issues : RMI
  • Exception handling
  • EJBHome and EJBObject interfaces
  • Handle and HomeHandle APIs
  • Common traps to avoid

Exception Handling

  • Distinction between business and callback methods
  • Application failure notification and recovery
  • System and application failures and the EJB runtime model
  • Planned vs unplanned failures
  • Representation of failures and exception inheritence in UML
  • Handling side effects of failure
  • Proper use of EJB application exceptions and EBJException
  • Application and system specific exceptions

EJB 2.0 Interface Enhancements

  • Interface methods
  • Improving application performance using local interfaces
  • Local interface restrictions
  • New interfaces and exception types
  • XML deployment scriptor and component reusability
  • Environment, transaction and security specification
  • Packaging and deployment

Introduction to Entity Beans

  • Purpose of entity beans and how they fit into the J2EE architecture
  • EntityBean methods
  • Differences between SessionContext and EntityContext
  • Bean managed and contained managed persistence
  • Entity bean lifecycle management
  • Use of UML to model entity bean creation, invocation, loading, storing and removal
  • Design and performance issues

Writing Entity Beans

  • Implementing CMP and BMP methods
  • Best practices for use of JDBC in BMP beans
  • Referential integrity issues
  • Deployment descriptors
  • Design patterns
  • Finder methods for logical data views: single and multiple row finders
  • UML representations
  • Business model requirements and entity bean design

Web Architecture and Fundamentals

  • HTTP
  • Servlets, HTTP Servlet
  • HTML Basics

HTTP Servlets

  • Servlets
  • Writing a Base HTTPServlet
  • Form Processing
  • Controlling Client Behaviour
  • Sessions and Cookies

JavaServer Pages

  • Introduction to JSP
  • Basic JSP Syntax
  • Implicit Objects
  • Actions and JavaBeans

Web Applications

  • Understanding Web Applications
  • Configuring Web Applications (the Web.xml in depth)