Advanced Java using Eclipse/RAD v7
Revision: TE1111_20060823
(10.3 KB) View, Download, or Print Catalog as a PDF.
Course Length:
5 Days
Course Description:
This course teaches students how to develop advanced Java applications using Eclipse v3.1.2.
Who Should Attend:
This course is intended for programmers who are familiar with Java and want to learn about the advanced features of Java and server-side programming.
Benefits of Attendance:
Upon completion of this course, students will be able to:
- Explain the eBusiness architecture
- Use WSAD for Java and J2EE application development
- Learn how to develop JavaBeans for use with JSP
- Learn the various architectural models for developing JSP and servlet applications
- Learn the details of how and when the servlet is loaded, methods to receive information and can generate HTML
- Learn how servlets can be used for database connectivity
- Learn to build multi-threaded JSP and servlet applications
- Learn Enterprise JavaBeans
Prerequisites:
Students should have a good understanding of object-oriented programming using Java.
Course Outline:
- Arrays and Collections
- Why Collections?
- Collections Interfaces
- Collections Implementations
- Collections Utilities
- Collections Notes
- Generics and Collections
- JavaBeans
- Structure
- Life Cycle
- Properties
- Making a Bean
- JDBC
- Java Database Connectivity
- Types of Drivers
- Making a Connection
- Statements
- Execute, Update and ResultSets
- Prepared Statements
- Stored Procedures
- Transactions
- Connection Pooling
- Internationalization
- Locale
- Dates
- User Interface design
- Resource Bundles
- Other Local Customs
- How Java Represents Characters
- Text Files
- The Reflection API
- Dynamic Facilities In Java
- What this dynamic aspect implies
- Considerations
- The Class class
- Examining Classes
- The Example From Last Time
- Reflection Allows
- Reflection Also Allows
- When not to use Reflection
- Examining Classes
- Manipulating Objects
- Creating Objects
- Getting Field Values
- Setting Field Values
- Arrays
- Architecture
- Tiered Architectures
- Presentation Layer
- Middle Tier
- Model View Controller
- Extensible Markup Language
- XML
- Threads
- Threads in Java Programming
- Write a Runnable Class
- Create Threads
- Another Way of Creating Threads
- Two ways of creating threads
- States in a Thread’s Lifetime
- JVM Scheduler
- Control and Schedule Thread
- Executor Interface
- Callable Interface
- ExecutorService Interface
- Future Object
- Coordinating the Concurrency of Multiple threads
- Synchronization
- How Does the Object Lock Flag Work
- Using the synchronized keyword
- The implication of synchronization
- Example of Synchronization - Producer/Consumer
- Example of Synchronization – MyStack
- Example of Synchronization – Producer
- Example of Synchronization – Consumer
- Example of Synchronization – SyncTest
- Coordinating Thread Cooperation
- wait() and notify()
- Example of Coordination Producer/Consumer
- Example of Coordination – MyStack
- Results
- Deadlock
- Networking
- Java Networking
- URL Connections
- Browser Example
- InetAddress
- Socket Classes
- Simple Clients and Servers
- Multithreaded Servers
- UDP Sockets
- Distributed Objects
- Serialization
- Externalizable
- Remote Method Invocation
- Steps to implement RMI
- RMI – Remote Object Registry
- RMI – Dynamic class loading
- RMI and Applets
- Parsing XML with SAX
- Obtaining a Parser
- SAX
- Core SAX2 Handler Classes
- SAX2 DefaultHandler
- SAX Events
- Ignorable Whitespace
- XML Reader Interface
- XMLReader Features
- XMLReader Factory
- Prepare SAX Parser Object
- Parse XML with SAX – Steps
- Define an Event Handler
- Prepare SAX Parser Object
- Define an Event Handler – startElement()
- Define an Event Handler –Element Attributes
- Define an Event Handler – Get Number of Attributes
- Define an Event Handler – Get Name of Attributes
- Define an Event Handler – Get Attribute Values
- Define an Event Handler – Get Attribute Types
- Define an Event Handler – An Example
- Define an Event Handler – characters()
- Using characters()
- Define an Event Handler – Error Handling
- Define an Event Handler – ErrorHandler interface
- Parse XML Document
- Simple SAX Parser
- Run the SAX Application
- EntityResolver
- Locator
- Document Locator
- Parsing XML with DOM
- DOM
- Limitations of SAX
- XML as an Object Model
- Nodes
- The Basic Node Types
- Less Common Node Types
- Node Interface
- Document Interface
- NodeList Interface
- Element Interface
- Attr Interface
- Text Interface
- DOM Parsing
- Parse XML with DOM – Steps
- Prepare DOM Parser Object
- Parse XML Document
- Parse Exceptions
- JDK Versions
- JDK 1.4 – New I/O API
- Buffer
- Channel
- Simple Write Example
- Simple Read Example
- File Locking
- Simple Locking Example
- Memory Mapping File
- Example Memory Mapping
- Regular Expression Search
- JDBC 3.0 Enhancements
- JDK 1.4 – New Features
- Control Flow of Logging
- Loggers
- Logging API - Handlers
- Logging API – Formatters & Log Manager
- Example Logging Configuration File
- Logging Example
- XML Processing Using JAXP
- XML Serialization Format
- Chained Exception
- JDK 1.4 - Assertions
- When to use Assertions
- Enabling Assertions
- Java 5-Type Safe Enums
- Java 5 – Generic Types
- Java 5 – Autoboxing/Unboxing
- Java 5 – For-each syntax
- Java 5 – Variable-length argument lists
- Java 5 – Static import
- Java 5 – Annotations
- Java 5 – Library Additions
- JNI
- JNI - Java Native Interface
- Overview
- JNI Architecture
- Calling C Functions
- The Header File
- Passing Simple Parameters
- Mapping Java Types
- Calling Java Methods
- The Invocation API
- Exception Handling
- Native Exception to Java
- Java Exception In Native Code
- Code Sample
- Security
- Java Security
- Attacks and Dangers
- Overview of JDK Security Features
- Basic Concepts of Computer Security
- Encryption
- Cryptography Algorithm
- Message Digest
- Symmetric and Asymmetric Ciphers
- Digital Signature
- Authentication
- Certificate Manipulation
- Java Cryptography Architecture (JCA)
- Java Cryptography Extension
- Using the MessageDigest Class
- Example of Using the MessageDigest Class
- Using the Signature Class
- Java Security Architecture
- JDK 1.0 Security Model – Sandbox
- JDK 1.1 Security Model – Trusted Signed Code
- JDK 1.2 Security Model – Security Policy
- JDK 1.4 Security Enhancement
- Protection Domains and Security Policies
- ProtectionDomain Class
- Permission Classes
- Using Permission Classes
- Policy Class
- Policy Configuration File
- AccessController Class
- SecurityManager Class
- Using the SecurityManager Class
- Dynamic Class Loader
- Loader Classes
- Example of Security Check in a Class Loader
- Java Security Tools
- Using Java Security Tools – Code Signing



