Advanced Java Programming
Course
Inhouse
Description
-
Type
Course
-
Methodology
Inhouse
-
Start date
Different dates available
This intensive, hands-on course explores advanced Java Standard Edition language features and packages. Students will learn to parse XML documents using the JAXP API. Multi-threaded applications will be covered in detail including concepts such as deadlocks and race conditions.
Facilities
Location
Start date
Start date
About this course
Java programmers who wish to increase their depth of knowledge in Java programming and explore the uses of the various advanced packages.
To succeed fully in this course, students should be able to:Intermediate Java Programming or equivalent experience is required.
Students will also learn how to utilize more advanced I/O capabilities with object serialization and low- level file I/O with the java.nio package. Client/server applications will be written utilizing both the java.net and java.rmi packages. Additional topics on JNDI and performance tuning, as well as appendices on encryption and JNI, round out the course.
Reviews
This centre's achievements
All courses are up to date
The average rating is higher than 3.7
More than 50 reviews in the last 12 months
This centre has featured on Emagister for 6 years
Subjects
- XML training
- Java Programming
- Java
- XML
- Communication Training
- Programming
Course programme
#text-block-10 { margin-bottom:0px; text-align:left; }
1. Course Introduction
Course Objectives Course Overview
Using the Workbook Suggested References
2. Processing XML with Java – JAXP
The Java API for XML Processing Introduction to SAX Parsing SAXParser and JAXP SAX Event Methods Introduction to DOM
Parsing DOM with JAXP The DOM API Validation
Transformation
3. Introduction to Threads
Non-Threaded Applications Threaded Applications Creating Threads Thread States
Runnable Threads
Coordinating Threads Interrupting Threads Runnable Interface ThreadGroups
4. Thread Synchronization and
Concurrency
Race Conditions
Deadlocks
Synchronized Blocks
Synchronized Collections Thread-Aware Collections
Thread Communication — wait() Thread Communication — notify()
Executor Callable
5. Advanced I/O – Object Serialization
What is Serialization? Serializable Objects Writing an Object Reading an Object
Handling Exceptions
Customizing Serialization Controlling Serialization Versioning
6. Advanced I/O – New I/O
The java.nio package Buffers and Channels Buffer Implementations Buffer Methods
ByteBuffer Methods FileChannel File Locking
MappedByteBuffer
Transferring Data between Channels Character Sets
Synchronized Methods
#text-block-11 { margin-bottom:0px; text-align:left; }
7. Reflection
Introduction to Reflection The Class Class
The reflect Package Constructors Fields
Methods
Exception Handling and Reflection JavaBeans
Dynamic Programming
8. Networking with Sockets
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
9. Remote Method Invocation
Distributed Applications Stubs
Steps to Create a Remote Object An RMI Client An RMI Server
RMI Classes and Interfaces Class Distribution
Parameter Passing and Serialization
10. Java Naming and Directory Interface
(JNDI)
String, StringBuffer, and StringBuilder Synchronized Inline methods
Tuning Collections
12. Appendix A – Encryption with the
javax.crypto Package Cryptography Concepts Encryption Keys
Cipher Algorithms
Modes and Padding Schemes The Cipher Class
Encrypting and Decrypting Data Cipher Output Stream Cipher Input Stream
Encryption using Password Ciphers Exchanging Encrypted Keys Sealed Objects
13. Appendix B – Native Methods 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 JNI Signatures
Naming and Directory Services Namespaces and Contexts Naming Operations Bindings
Attributes
Directory Operations
DNS Lookups with JNDI JNDI in Java EE
11. Java Performance Tuning
Is Java Slow?
Don’t Optimize Until You Profile HotSpot Virtual Machine
Garbage Collection Concepts Garbage Collection Generations Garbage Collection Algorithms Object Creation
Advanced Java Programming