Java Programming with Server-Side Web Applications

Course:  JPSSW
Duration:  5 Days
Level:  I
Course Summary

This course combines both an introduction to Java programming and the essentials of server-side Web Applications. Java programming syntax and fundamental APIs are first presented in a client-side context and include file I/O and Database processing.

Subsequent material introduces the Java Enterprise architecture and the development of Web Applications using Servlets and JavaServer Pages.

« Hide The Details
Topics Covered In This Course

INTRODUCTION

  • Origins, Bundles/Releases, SE/EE Packages
  • Java Development JDK vs Runtime JVM Environments
  • Major APIs, Packages
  • Language Features
  • Development Tools - Sun JDK, Open Source, Commercial
  • Running Applications - JVM/JDK Installation, Environment Setup
  • Source Code Examples

Language Fundamentals

  • Program/Source File Structure, comments
  • Java Syntax Essentials, Blocks
  • Identifiers
  • DataTypeRepresentations
  • Constant Representations
  • Operators and Expressions
  • Console Stream I/O
  • Conditionals, if/else, switch/case
  • Working with String Class Objects
    • Declaring and Initializing
    • Comparing Strings
    • String Class Methods

Additional Language Facilities

  • Looping Constructs
    • Conditional: while, do/while, conditions
    • Iterative: for, clauses
    • Flow Control: break, continue
  • Array Processing
    • Declaration & Allocation
    • Initialization & Reference
    • Command Line Arguments
  • Wrapper Classes
    • Overview
    • String to primitive datatype conversion
  • Appendix: Vectors, String Token Parsing

Function Methods

  • Overview
  • Method Signatures: Arguments, Return Types, Access
  • Invocation: Internal vs External Methods, Classpath Issues
  • Variable Scope: Local vs Global
  • Overloaded Methods, Runtime Resolution/Conversions
  • Reference vs Value Argument Passing, Objects vs Primitive Types
  • Exception Handling
    • Overview
    • Checked vs Unchecked Runtime Exceptions
    • try, catch, throw
  • Appendix: Static vs NonStatic Methods

Classes and Objects

  • Overview: Abstraction, Encapsulation, Polymorphism and Inheritance
  • Declaring Classes and Objects
  • Accessing Class Data and Methods
  • Object Creation and Constructors
  • Assigning and Comparing Objects
  • Encapsulation: private, public and protected Access
  • Static Data and Methods
  • Subclassing and Inheritance
    • Data and Method Inheritance
    • Child Constructors
    • Overriding Methods
  • Polymorphism
  • Appendix
    • Abstract Classes
    • Interfaces
    • Inner Classes

Input/Output Streams

  • java.io Package Overview
  • File class and host filesystem data
  • Byte Streams: FileInput/OutputStream Classes
  • Binary Data Streams: DataInput/OutputStream Classes
  • Text Streams: BufferedReader/Writer Classes
  • Object Streams: Serialization, OubjectInput/OutputStream Classes

Using JDBC

  • Overview and Essential Classes/Interfaces
  • DriverManager: Making Connections
  • Statement and ResultSet Classes
    • Queries and Updates
    • Processing ResultSets, Mapping SQL-to-Java Types
  • Catching/Handling SQL Exceptions, Messages
  • Special Statements
    • PreparedStatement: precompiled queries/updates
    • CallableStatement: using stored procedures
  • Transactions
  • Appendix
    • Advanced ResultSet Processing: Scrollable/Updatable Cursors
    • DatabaseMetaData, ResultSetMetaData

Java EE and Server-Side Applications

  • Overview
  • EE Platform, Containers, Services
  • EE API Packages
  • Development Components and Server Directory Structure
  • EE Roles

Developing Servlets

  • Overview: HTTP, Browser/Server Cycle, Web Container
  • Servlet Component Architecture
    • Interfaces and Implementation Classes
    • Servlet Lifecycle: init, service, destroy
  • Coding Servlets
    • ServletRequest/Response Class objects
    • HTML Forms and Servlet Processing
  • Using Files and Databases
    • Accessing Server-Side Files
    • Accessing Databases, Server DataSource, Connection Pooling
  • Maintaining Conversational State
    • Cookies, Hidden Form Fields, URL Rewriting
    • HttpSession Processing
  • Servlet Collaboration
    • Overview
    • Using RequestDispatcher

Developing JavaServer Pages

  • JSP Overview, Translation/Execution Phases
  • JSP Coding
    • JSP Tag Syntax
    • Directives: page, include, taglib
    • Scripting Elements: Declarations, Scriptlets, Expressions
    • Predefined Implicit Objects
  • XML Action Tags
    • useBean, get/setProperty
    • Form processing
    • include/forward Collaboration Tags
  • Appendix: JavaBean Design Pattern
What You Can Expect

At the end of this course, students will be able to:

  • Describe the evolution of Java releases and SE/EE API facilities.
  • Develop console-based client-side applications using the full core Java syntax.
  • Write programs using existing classes in the lang and util Java packages.
  • Understand and code for runtime exception handling.
  • Write programs to access disk-based file sources using the Java io package using byte, binary, character and object streams.
  • Write programs to manipulate relational databases using the Java sql package including ResultSets, Stored Procedures and Transaction Management.
  • Understand and describe the Java Application Server architecture, containers, services provided and deployment units.
  • Understand the Servlet architecture and lifecycle methods.
  • Develop servlets to process HTML forms and return dynamically created HTML pages.
  • Develop JavaServer Pages to process and create dynamic HTML pages.
  • Code server-side database applications using JNDI and DataSources.
  • Design and develop collaborative Servlet/JSP web applications.
  • Understand and use EE facilities for maintaining conversational state.
Who Should Take This Course

The material covered in this course is designed for students with previous OO programming experience who plan to develop server-side Web Applications using Java.

Recommended Prerequisites

Due to the aggressive scope and breadth of material presented, students should be familiar with C/C++ and/or C# programming or have a strong VB background.

Students with light/no C/OO backgrounds should consider covering this material by attending the separated offerings "Java Fundamentals for Non OOP and Cobol Programmers" followed by "Java Server-Side Web Applications".

Training Style

Instructor led lecture and discussion with extensive demos and hands-on labs. Chapter appendices include optional/advanced material to be included as time permits. Multiple labs for each chapter permit students with varied backgrounds to progress through the material.

« Hide The Details
Related Courses
Code Course Title Duration Level
JAVA101
Java Development for Non OOP & COBOL Programmers
5 Days
I
Details
WLADM1
WebLogic 11 Server Administration
5 Days
I
Details
JAVAF
Fundamentals of Java Development
5 Days
I
Details
JSFCS
JavaServer Faces
2 Days
II
Details
WLADM2
WebLogic 11 Advanced Server Administration
5 Days
II
Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at info@verhoef.com