Advanced Java Training

Duration: 5 days
Course code: SS-JAV-010

Audience

This course is designed for experienced Web application developers and professionals:

  • System Designers
  • Application Developers
Prerequisites

Experience with Java is essential.

Description

The Advanced Java training course is designed for software professionals seeking to design and develop applications using the latest Java Standard Edition specification. Based on SciSpike's well-received training methodologies, the course provides for a rapid, efficient (and, yes, intense) immersion into advanced Java topics.

The Advanced Java training course is a five-day course and covers Java Foundation Classes (JFC), Swing Components, JavaBeans, Reflection, Network Programming, Remote Method Invocation (RMI), Java Database Connectivity (JDBC) and Java Security.

Participants will master the fundamentals of graphical user interface development using the Java Swing library. Using either Rational Application Developer (RAD) or Eclipse, attendees build, package, deploy and test JavaBeans. This course covers topics in distributed computing using both the Java network class library and the RMI framework. Database programming topics also include transactions, query execution with ad-hoc queries, compiled queries and stored procedure statements using JDBC. We also cover advanced JDBC topics, such as distributed transactions, scrollable result sets etc. provided in the latest JDBC API. The Java security model and the class library are also covered in sufficient detail.

The Advanced Java training course consists of a large number of fully worked out example code illustrating various concepts introduced during the course. The concepts are further reinforced through the use of well-crafted exercises at appropriate points throughout the course.

Objectives

Our Advanced Java training courses are targeted to provide you with advanced programming skills using Java. On completion, attendees would be able to:

  • Master graphical user interface development using the Swing API in Java
  • Master network programming in Java
  • Effectively use distributed component based programming using RMI
  • Master component-based development using JavaBeans
  • Master reflective programming using the Reflection API
  • Build secure java application using the Java Security API and tools

Outline for Advanced Java Training Courses

Java Swing

  • Event Model
  • GUI Elements
  • JFrame
  • JPanel
  • JButton
  • Scrollbars
  • Split Panes
  • Tabled Panes
  • Layout Managers
  • Flow Layout
  • Grid Layout
  • Gridbag Layout
  • Border Layout
  • Box Layout
  • JTable
  • Table model
  • Table events
  • Listeners
  • Selections
  • Custom rendering of cells
  • Editing table elements
  • Writing custom editors

JList

  • List model
  • Events and Listeners
  • Selection models
  • Custom rendering
  • Editing elements

Combo Box

  • Model
  • Events & Listeners
  • Selection
  • Custom rendering
  • Custom editors

JTree

  • Tree Model
  • Listeners
  • Selection model
  • Custom rendering
  • Custom editing

Text Editors

    • Text Model
    • Editor and Editor kits
    • Events and Listeners
    • Selections
    • Displaying data
    • Multiple colors
    • Multiple fonts
    • Embedding images in text areas
    • Embedding components in text areas

Displaying HTML

Network Programming

  • Java.net package
  • Sockets
  • Client-Server Programming
  • Mapping Streams to Sockets
  • Building a multithreaded client server system

Remote Method Invocation (RMI)

  • Distributed Objects
  • Concepts in distributed computing
  • The Proxy design pattern
  • Specifying remote interfaces
  • Distributed Java Objects
  • Using RMI compiler
  • Specifying security policies
  • Installing security managers
  • RMI-IIOP protocol

Java Database Connectivity (JDBC)

  • Fundamentals of Database Programming
  • Using the JDBC API
  • JDBC connectivity types
  • Bridging technology
  • Native API
  • Middleware
  • Pure Java Drivers
  • Loading JDBC drivers
  • Connection
  • Statements
  • ResultSets
  • Meta Data
  • Database MetaData
  • ResultSet MetaData
  • Scrollable Result Sets
  • Accessing the Transaction Manager
  • Two-Phase Commit
  • Data Sources
  • Connection Pools

Java Reflection

  • Reflection programming
  • Concept of a "Meta" class
  • Benefits of meta programming
  • Runtime representation of classes
  • The Class class
  • Dynamic loading of classes
  • Instantiating objects programmatically
  • Representing methods
  • Invoking methods dynamically
  • Runtime representation of attributes
  • Dealing with primitive types

Java Beans

  • Component based application development
  • Fundamentals of Java Beans
  • Properties
  • Conventions
  • Property Editors
  • Building Simple Java Beans
  • Exporting Properties Explicitly
  • Using the "BeanInfo" interface
  • Property Descriptors
  • Method Descriptors
  • Event Descriptors
  • Custom rendering of properties
  • Specifying property editors
  • Design and development of custom property editors
  • Designing Java Bean customizers
  • Packaging and deploying Java Beans
  • Using Java Beans
  • Accessing pre-built Java Beans from the visual composition editor
  • Instantiation and customization of Java Beans using property editors
  • Assembling Java Beans to build applications visually
  • Storing and distributing a Java Bean assembled application

Fundamentals of Cryptography

  • Public Key Cryptography
  • Signatures
  • Digest
  • Certificates (X.509)
  • Authentication

Java Security

  • Sandbox model
  • Security Manager
  • Policy
  • Permissions
  • Domains
  • Java Cryptography Extension (JCE)

Java Security Tools

  • Policy Tool
  • Key Tool
  • Jar Signer

Comments are closed.