Skip Navigation Links

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
    1. Why Collections?
    2. Collections Interfaces
    3. Collections Implementations
    4. Collections Utilities
    5. Collections Notes
    6. Generics and Collections
  • JavaBeans
    1. Structure
    2. Life Cycle
    3. Properties
    4. Making a Bean
  • JDBC
    1. Java Database Connectivity
    2. Types of Drivers
    3. Making a Connection
    4. Statements
    5. Execute, Update and ResultSets
    6. Prepared Statements
    7. Stored Procedures
    8. Transactions
    9. Connection Pooling
  • Internationalization
    1. Locale
    2. Dates
    3. User Interface design
    4. Resource Bundles
    5. Other Local Customs
    6. How Java Represents Characters
    7. Text Files
  • The Reflection API
    1. Dynamic Facilities In Java
    2. What this dynamic aspect implies
    3. Considerations
    4. The Class class
    5. Examining Classes
    6. The Example From Last Time
    7. Reflection Allows
    8. Reflection Also Allows
    9. When not to use Reflection
    10. Examining Classes
    11. Manipulating Objects
    12. Creating Objects
    13. Getting Field Values
    14. Setting Field Values
    15. Arrays
  • Architecture
    1. Tiered Architectures
    2. Presentation Layer
    3. Middle Tier
    4. Model View Controller
    5. Extensible Markup Language
    6. XML
  • Threads
    1. Threads in Java Programming
    2. Write a Runnable Class
    3. Create Threads
    4. Another Way of Creating Threads
    5. Two ways of creating threads
    6. States in a Thread’s Lifetime
    7. JVM Scheduler
    8. Control and Schedule Thread
    9. Executor Interface
    10. Callable Interface
    11. ExecutorService Interface
    12. Future Object
    13. Coordinating the Concurrency of Multiple threads
    14. Synchronization
    15. How Does the Object Lock Flag Work
    16. Using the synchronized keyword
    17. The implication of synchronization
    18. Example of Synchronization - Producer/Consumer
    19. Example of Synchronization – MyStack
    20. Example of Synchronization – Producer
    21. Example of Synchronization – Consumer
    22. Example of Synchronization – SyncTest
    23. Coordinating Thread Cooperation
    24. wait() and notify()
    25. Example of Coordination Producer/Consumer
    26. Example of Coordination – MyStack
    27. Results
    28. Deadlock
  • Networking
    1. Java Networking
    2. URL Connections
    3. Browser Example
    4. InetAddress
    5. Socket Classes
    6. Simple Clients and Servers
    7. Multithreaded Servers
    8. UDP Sockets
  • Distributed Objects
    1. Serialization
    2. Externalizable
    3. Remote Method Invocation
    4. Steps to implement RMI
    5. RMI – Remote Object Registry
    6. RMI – Dynamic class loading
    7. RMI and Applets
  • Parsing XML with SAX
    1. Obtaining a Parser
    2. SAX
    3. Core SAX2 Handler Classes
    4. SAX2 DefaultHandler
    5. SAX Events
    6. Ignorable Whitespace
    7. XML Reader Interface
    8. XMLReader Features
    9. XMLReader Factory
    10. Prepare SAX Parser Object
    11. Parse XML with SAX – Steps
    12. Define an Event Handler
    13. Prepare SAX Parser Object
    14. Define an Event Handler – startElement()
    15. Define an Event Handler –Element Attributes
    16. Define an Event Handler – Get Number of Attributes
    17. Define an Event Handler – Get Name of Attributes
    18. Define an Event Handler – Get Attribute Values
    19. Define an Event Handler – Get Attribute Types
    20. Define an Event Handler – An Example
    21. Define an Event Handler – characters()
    22. Using characters()
    23. Define an Event Handler – Error Handling
    24. Define an Event Handler – ErrorHandler interface
    25. Parse XML Document
    26. Simple SAX Parser
    27. Run the SAX Application
    28. EntityResolver
    29. Locator
    30. Document Locator
  • Parsing XML with DOM
    1. DOM
    2. Limitations of SAX
    3. XML as an Object Model
    4. Nodes
    5. The Basic Node Types
    6. Less Common Node Types
    7. Node Interface
    8. Document Interface
    9. NodeList Interface
    10. Element Interface
    11. Attr Interface
    12. Text Interface
    13. DOM Parsing
    14. Parse XML with DOM – Steps
    15. Prepare DOM Parser Object
    16. Parse XML Document
    17. Parse Exceptions
  • JDK Versions
    1. JDK 1.4 – New I/O API
    2. Buffer
    3. Channel
    4. Simple Write Example
    5. Simple Read Example
    6. File Locking
    7. Simple Locking Example
    8. Memory Mapping File
    9. Example Memory Mapping
    10. Regular Expression Search
    11. JDBC 3.0 Enhancements
    12. JDK 1.4 – New Features
    13. Control Flow of Logging
    14. Loggers
    15. Logging API - Handlers
    16. Logging API – Formatters & Log Manager
    17. Example Logging Configuration File
    18. Logging Example
    19. XML Processing Using JAXP
    20. XML Serialization Format
    21. Chained Exception
    22. JDK 1.4 - Assertions
    23. When to use Assertions
    24. Enabling Assertions
    25. Java 5-Type Safe Enums
    26. Java 5 – Generic Types
    27. Java 5 – Autoboxing/Unboxing
    28. Java 5 – For-each syntax
    29. Java 5 – Variable-length argument lists
    30. Java 5 – Static import
    31. Java 5 – Annotations
    32. Java 5 – Library Additions
  • JNI
    1. JNI - Java Native Interface
    2. Overview
    3. JNI Architecture
    4. Calling C Functions
    5. The Header File
    6. Passing Simple Parameters
    7. Mapping Java Types
    8. Calling Java Methods
    9. The Invocation API
    10. Exception Handling
    11. Native Exception to Java
    12. Java Exception In Native Code
    13. Code Sample
  • Security
    1. Java Security
    2. Attacks and Dangers
    3. Overview of JDK Security Features
    4. Basic Concepts of Computer Security
    5. Encryption
    6. Cryptography Algorithm
    7. Message Digest
    8. Symmetric and Asymmetric Ciphers
    9. Digital Signature
    10. Authentication
    11. Certificate Manipulation
    12. Java Cryptography Architecture (JCA)
    13. Java Cryptography Extension
    14. Using the MessageDigest Class
    15. Example of Using the MessageDigest Class
    16. Using the Signature Class
    17. Java Security Architecture
    18. JDK 1.0 Security Model – Sandbox
    19. JDK 1.1 Security Model – Trusted Signed Code
    20. JDK 1.2 Security Model – Security Policy
    21. JDK 1.4 Security Enhancement
    22. Protection Domains and Security Policies
    23. ProtectionDomain Class
    24. Permission Classes
    25. Using Permission Classes
    26. Policy Class
    27. Policy Configuration File
    28. AccessController Class
    29. SecurityManager Class
    30. Using the SecurityManager Class
    31. Dynamic Class Loader
    32. Loader Classes
    33. Example of Security Check in a Class Loader
    34. Java Security Tools
    35. Using Java Security Tools – Code Signing