|
ABOUT THE INSTRUCTOR
COURSE REVIEWS JSF 2.0, JSF 1.x, & MYFACES AJAX (w/ JQUERY, DOJO, EXT...) GWT 2.0 INTERMEDIATE SERVLETS & JSP SPRING FRAMEWORK HIBERNATE & JPA ADVANCED SERVLETS & JSP JAVA 6 PROGRAMMING JAKARTA STRUTS 1.x & STRUTS 2 SCWCD IPHONE PROGRAMMING CUSTOMIZED ON-SITE PUBLIC TRAINING SCHEDULE
APACHE TOMCAT
6 (6.0.28) APACHE TOMCAT 7 INTERMEDIATE SERVLETS & JSP ADVANCED SERVLETS & JSP JAVASERVER FACES (JSF) JSF 1.x JSF 2.0 AJAX & GWT JAVASCRIPT & AJAX BASICS PROTOTYPE SCRIPTACULOUS JQUERY DOJO GWT 2.0 SPRING HIBERNATE & JPA JAVA 6 PROGRAMMING JAKARTA STRUTS EJB3 WEB SERVICES WITH AXIS2 SCWCD TUTORIALS IN CHINESE TUTORIALS IN JAPANESE
|
Web Application Development with Servlets & JSPFebruary 14-18 2011, JHU Dorsey Center, Elkridge MD
|
||||||||||
|
|
Syllabus
Course now includes an introduction to database access with JDBC
Introduction to and Overview of Java
- Truths / Myths About Java
- Java is Web-Enabled?
- Java is Safe?
- Java is Cross-Platform?
- Java is Simple?
- Java is Powerful?
- Common Java Protocols and Packages
- Getting Started
- Eclipse
- Applications
- Applets
Basic Java Syntax
- Creating, compiling, and executing simple Java programs
- Accessing arrays
- Looping
- Indenting code
- Using if statements
- Comparing strings
- Building arrays
- One-step process
- Two-step process
- Multidimensional arrays
- Performing basic mathematical operations
- Reading command-line input
Basic Object-Oriented Programming in Java
- Similarities and differences between Java and C++
- Object-oriented nomenclature and conventions
- Instance variables (data members, fields)
- Methods (member functions)
- Constructors
- Destructors (not!)
Object-Oriented Programming in Java: More Capabilities
- Overloading
- Designing "real" classes
- Inheritance
- Quick intro to advanced topics
- Abstract classes
- Interfaces
- Understanding polymorphism
- Setting CLASSPATH and using packages
- Visibility modifiers
- Creating on-line documentation using JavaDoc
Applets and Basic Graphics
- Applet restrictions
- Basic applet and HTML template
- The applet life-cycle
- Customizing applets through HTML parameters
- Methods available for graphical operations
- Using try/catch blocks
- Loading and drawing images
- Controlling image loading
More Java Syntax and Utilities
- Mutating vs. returning results
- Data structures
- ArrayList
- LinkedList
- HashMap
- Generics
- printf
- varargs
- String vs. StringBuilder
Asynchronous Event Handling
- General event-handling strategy
- Handling events with separate listeners
- Handling events by implementing interfaces
- Handling events with named inner classes
- Handling events with anonymous inner classes
- The standard AWT listener types
- Subtleties with mouse events
AWT Components
- Basic AWT windows
- Creating lightweight components
- Closing frames
- Using object serialization to save components to disk
- Basic AWT user interface controls
- Processing events in GUI controls
Organizing Windows with Layout Managers
- How layout managers simplify interface design
- Standard layout managers
- Positioning components manually
- Strategies for using layout managers effectively
Drawing with Java 2D
- Drawing Shapes
- Paint Styles
- Transparency
- Using Local Fonts
- Stroke Styles
- Coordinate Transformations
- Requesting Drawing Accuracy
GUIs: Basic Swing
- New features
- Basic approach
- Starting points
- JApplet, JFrame
- Swing equivalent of AWT components
- JLabel, JButton, JPanel, JSlider
- New Swing components
- JColorChooser, JInternalFrame, JOptionPane, JToolBar, JEditorPane
- Other simple components
- JCheckBox, JRadioButton, JTextField, JTextArea, JFileChooser
GUIs: Advanced Swing and MVC
- Building a simple static JList
- Adding and removing entries from a JList at runtime
- Making a custom data model
- Making a custom cell renderer
Multithreaded Programming
- Why threads?
- Basic approach
- Make a task list with Executors.newFixedThreadPool
- Add tasks to the list with tasks.execute
- Two variations on the theme
- Separate instances of Runnable
- One instance of Runnable
- Race conditions and synchronization
- Helpful Thread-related methods
- Advanced topics in concurrency
Multithreaded Graphics and Animation
- Approaches for multithreaded graphics
- Redraw everything in paint
- Have routines other than paint draw directly on window
- Override update and have paint do incremental updating
- Double buffering
- Reducing flicker in animations
- Implementing double buffering
- Animating images
- Controlling timers
Network Programming: Clients
- Creating sockets
- Implementing a generic network client
- Parsing data
- StringTokenizer
- String.split and regular expressions
- Retrieving files from an HTTP server
- Retrieving Web documents by using the URL class
Network Programming: Servers
- Steps for creating a server
- A generic network server
- Accepting connections from browsers
- Creating an HTTP server
- Adding multithreading to an HTTP server
Network Programming: Using Serialization to Send High-Level Data Structures
- Idea
- Requirements
- Steps for sending data
- Steps for receiving data
Accessing Databases with JDBC
- Overview of JDBC technology
- JDBC drivers
- Seven basic steps in using JDBC
- Using JNDI with JDBC
- Retrieving data from a ResultSet
- Using prepared and callable statements
- Handling SQL exceptions
- Submitting multiple statements as a transaction
Too few developers for
onsite courses? Try
our public courses in MD,
co-sponsored by Johns
Hopkins Engineering
for Professionals:
Java 6 Programming:
A Crash Course
Feb 7-11 2011
Web App Development
with Servlets and JSP
Feb 14-18 2011
Rich Internet Apps
with Ajax (& jQuery)
Feb 28-Mar 4 2011
(Also Oct 2010
in Norway)
March 7-11 2011
March 15-18 2011
(Also Oct 2010
in Norway)
Java EE with
Spring & Hibernate
March 21-25 2011
RESTful & SOAP-based
Web Services in Java
April 4-6 2011
Courses at
YOUR Location
• Customized Content
• Flexible Dates
• Any Country
CEU's Now Available
You can get CEU's
for onsite courses.
Courses can be
offered directly from
accredited college.



The course will be held at