Advanced Java Features and Extensions

5 Days course

Language: English

This course is only available on request!!


DESCRIPTION
This course exposes the student to Advanced Java features such as JavaBeans, Servlet Programming, the Java Database Connectivity, Remote Method Invocation, and Swing.
Other major topics in this course include Network Programming Serialization, Properties, Security, the Collection Classes and Architectures.

WHAT YOU WILL LEARN
distinguish between the various phases of construction of objects;
choose the correct data structures from the Java Collections classes;
extend appropriate I/O classes in order to create a new I/O class
distinguish among various thread problems and provide the correct programming solution;
create a Java Bean Component and execute it within the BeanBox;
write TCP/IP Client Server applications using the sockets;
execute methods on a remote object and use the results that are returned from the method;
write Java Servlets to implement HTML form processing;
write Java applications using the JDBC to make database independent queries; and
use many of the superior capabilities of the Swing components

WHO SHOULD ATTEND:
This course is intended for programmers who have been programming in Java and who wish to write programs in Java using many of the advanced Java features.

ASSUMED KNOWLEDGE
Students should have completed a beginning Java course or have been programming in Java for at least three - six months

OUTLINES


CHAPTER 1: WHAT YOU SHOULD ALREADY KNOW
1) Data types
2) Passing Data types to a method
3) Method names
4) Constructors and initialization
5) Object Cloning
6) Garbage collection
7) Interfaces and abstract classes
8) Properties
9) static blocks
10) Comparable vs. Comparator
11) Iterators
12) Serialization of collections
13) Thread safety
14) Conversions

CHAPTER 2: THE COLLECTION CLASSES
1) A simple example
2) Collection class hierarchy
3) Algorithms
4) Interfaces
5) HashMap
6) Binary search
7) Collection.copy

CHAPTER 3: OPTIMIZATION TECHNIQUES
1) Optimizing Java
2) Vector vs.arrays
3) Using arraycopy
4) Compiler optimizations
5) tring vs. StringBuffer
6) HashTable Performance

CHAPTER 4: ADVANCED I/O
1) Serialized objects
2) Serialization issues
3) Writing your own I/O classes
4) Zip I/O

CHAPTER 5: THREADS
1) Review of Fundamentals
2) Monitors
3) Deadlock
4) Producer/Consumer Problems
5) Using wait and notify

CHAPTER 6: JAVA BEANS
1) Introduction
2) Component Model Services
3) The Bean Box
4) The jar utility
5) A Simple Bean
6) Bean properties
7) Bean naming conventions
8) Beans vs. other Java executables
9) Events
10) Defining your own events
11) Persistence
12) Version control
13) Reflection + Introspection
14) BeanInfo

CHAPTER 7: NETWORK PROGRAMMING
1) Networking fundamentals
2) The Client/Server model
3) Internet addresses
4) URLs
5) Sockets
6) Sample client programs
7) Writing servers

CHAPTER 8: REMOTE METHOD INVOCATION (RMI)
1) Introduction
2) Building a RMI Server
3) Implementing the Server interface
4) The Server Remote Object
5) The Client code
6) Compiling and running the code
7) Other issues - passing arguments

CHAPTER 9: SERVLETS
1) Servlets
2) The HTTP protocol
3) The request/response paradigm
4) HTTP methods
5) Servlet classes
6) A simple servlet
7) Starting the server
8) Running the servlet
9) Servlet engines
10) Processing HTML form data with a servlet
11) The Servlet Life Cycle

CHAPTER 10: JDBC
1) Introduction
2) Relational databases
3) SQL
4) A sample program
5) Transactions
6) Meta Data

APPENDIX 1: SECURITY
1) Introduction
2) Security managers
3) Security manager methods

APPENDIX 2: SWING
1) The JFC
2) Features of the Swing components
3) Model view controller architecture
4) Borders
5) Tooltips
6) Icons
7) Multiple document
8) JList


[HOME] [dates] [reserve] [seminars]
FDDI Institute
De Regenboog 11 - 2800 Mechelen - Belgium - Europe
Tel 32 15 24 50 58 - Fax 32 15 25 10 50