Skip Ribbon Commands
Skip to main content

JPE J-145 - Java Programming for the Enterprise


Duration: 5 Days




Delivery Method:

Software Assurance Value:

Microsoft CPE:

Course Information

Course Description

​This course teaches students how to write server-side Java code for the Java 2 Platform, Standard Edition (J2SE). Students will learn the Java language syntax and object-oriented theory as it relates to Java. Students will create Servlets and JavaBeans, interface with a database, use sockets for networking, and invoke native and remote methods.

This course does not cover all the information needed for any certification examination. Instead it is a fast-track approach to covering the server-side (only) coding techniques found in the Java Programming and Advanced Java Programming courses. For an overview of all of our Java training, visit the Java Curriculum page. You will find descriptions of different skill levels and Java platforms (J2SE, J2EE) you may encounter as a Java Developer.

Course Objectives

Course Audience

​Developers who need to create, enhance and maintain Java server-side code. This course is an entry-point into the Java curriculum for experienced developers who do not need Java Programmer or Java Developer certifications. This course provides the basic techniques that are prerequisite to entering the J2EE curriculum.

Course Outline

  • What is Java?
  • How to Get Java
  • A First Java Program
  • Compiling and Interpreting Applications
  • Applets
  • Compiling and Interpreting Applets
  • The JDK Directory Structure
  • A Java Program
  • Conditional Statements
  • Loop Statements
  • Syntax Details
  • Portable Datatypes
  • Expressions in Java
  • Strings
  • Arrays
  • Assertions
  • Defining a Class
  • Creating an Object
  • Instance Data and Class Data
  • Methods
  • Constructors
  • Visibility Modifiers
  • Methods and Messages
  • Parameter Passing
  • Comparing and Identifying Objects
  • Destroying Objects
  • Using the Primitive-Type Wrapper Classes
  • Documentation of Classes
  • Inheritance
  • Casting
  • Method Overriding
  • super
  • Interfaces
  • Abstract Classes
  • The Object Class
  • Introspection
  • Packages
  • The import Statement
  • CLASSPATH and import
  • Defining Packages
  • Package Scope
  • Exceptions Overview
  • Catching Exceptions
  • The finally Block
  • Exception Methods
  • Declaring Exceptions
  • Defining and Throwing Exceptions
  • Errors and RuntimeExceptions
  • Chained Exceptions
  • Overview of Streams
  • Bytes vs. Characters
  • Converting Byte Streams to Character Streams Binary Input and Output
  • PrintWriter class
  • Reading and Writing Objects
  • Streams Streams Streams
  • Buffers, Channels and Charsets
  • File and FileChannel Objects
  • Pattern Matching and Regular Expressions
  • Regular Expressions in Java
  • Regular Expression Syntax
  • Special Characters
  • Quantifiers (*, +, ?, {})
  • Assertions (^, $, \b, \B)
  • The Pattern Class
  • The Matcher Class
  • Capturing Groups
  • Java Arrays
  • The Collections Framework
  • Set Implementation Classes
  • List Implementation Classes
  • Map Implementation Classes
  • Applying Algorithms
  • Implementation and Performance Strategies
  • Non-Threaded Applications
  • Threaded Applications
  • Creating Threads
  • Thread States
  • Runnable Threads
  • Coordinating Threads
  • Runnable Interface
  • Threads in Applets
  • Interrupting Threads
  • ThreadGroups
  • The JDBC Connectivity Model
  • Database Programming
  • Connecting to the Database
  • Creating a SQL Query
  • Getting the Results
  • Updating Database Data
  • Finishing Up
  • Error Checking and the SQLException Class
  • The SQLWarning Class
  • The Statement Interface
  • The ResultSet Class
  • Updatable Result Sets
  • JDBC Types
  • Executing SQL Queries
  • ResultSetMetaData
  • Executing SQL Updates
  • Transaction Management
  • JDBC SQL Escape Syntax
  • Using a PreparedStatement
  • Parameterized Statements
  • Stored Procedures
  • ResultSets from Stored Procedures
  • The execute() Method
  • Batch Updates
  • RowSets
  • DatabaseMetaData
  • Large Objects
  • The DriverManager Class
  • Types of JDBC Driver
  • Clients and Servers
  • Ports, Addresses and Protocols
  • The Socket Class
  • Communication Using I/O
  • Servers
  • The ServerSocket Class
  • Concurrent Servers
  • The URL Class
  • The URLConnection Class
  • Distributed Applications
  • Stubs
  • Steps to Create a Remote Object
  • An RMI Client
  • An RMI Server
  • RMI Classes and Interfaces
  • Parameter Passing and Serialization
  • Callbacks
  • RMI Utilities
  • Component-Based Development
  • The Basic Bean
  • JavaBeans in J2EE
  • Bean Properties
  • Packaging Beans
  • Beans & JDBC
  • Using Servlets
  • Dynamic HTML Semantics
  • GenericServlet API
  • HttpServlet API
  • HTML Servlet Choices
  • Client/Server Communication
  • Client Example
  • Server Example
  • Overview of Java Native Methods and JNI
  • How to Create and Use Native Methods
  • Native Method Declaration
  • Using javah
  • Creating the Implementation Code
  • Compilation
  • Distribution
  • Using the Native Methods
  • JNI
  • Passing Arguments
  • Calling Java Methods in Native Code
  • Embedding a VM in Native Code

Java 2 Language Fundamentals

Objects and Classes

Inheritance in Java


Exception Handling

Input/Output Streams

Regular Expressions


Introduction to Threads

Introduction to JDBC

JDBC SQL Programming

Advanced JDBC

Networking with Sockets

Remote Method Invocation

Server-Side Components


Native Methods

Course Prerequisites

​Before attending this course, students must have:

  • Experience with syntax fundamentals of one (or more) of the programming languages: JavaScript, Perl, C, C++, C#, Visual Basic.
  • Knowledge of Object-oriented concepts (recommended).
Course Schedule
This course is not scheduled yet.