|
Java Programming with Server-Side Web Applications |
|
| 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. |
| AUDIENCE: |
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. |
| 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". |
| APPROACH: |
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. |
| OBJECTIVES: |
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.
|
| COURSE CONTENT: |
- 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
AJC/08 |
|
© 2007 Verhoef Training, Inc.
|