develop e-commerce applications

This is a two-day course, to extend core Java skills to building e-commerce applications. The course is built around the JSP technology - an extension to Servlets. Design issues are central to the course, in particular how to:

  • migrate from fat to thin clients
  • divide presentation from application logic
  • modularize server code with server beans
  • use Component Based Design, for example to encapsulate enterprise system access

Duration: 2 days

objectives

  • learn the fundamental technologies behind Java-based e-commerce Web applications
  • practice good design, based on the Sun e-commerce Application Blueprint
  • build an e-commerce application with Java Web-based technology
  • partition an application to separate the concerns of presentation, logic, and data
  • completely decouple the presentation layer with JSP templates

target audience

The course is suitable for Java developers/analysts who wish to write code or work to a productive programming model for the Web. The course is run on the J2EE platform, and the development language is of course Java.

prerequisites

Ideally this training would be preceded by the course: design and develop Java applications.

Basics of e-commerce

Introduces the fundamental parts to an e-commerce application

  • server technology
  • client/server Vs n-tier
  • e-commerce components
  • distributed applications
  • JDBC for dynamic data
  • access to stored procedures
  • various models e-commerce application design

Client side

Weigh up the pros and cons of client options: pure HTML, applets, XML, ...

  • applet syntax and semantics
  • applets and HTML
  • browser restrictions and problems
  • client/Server divide in Applet-based applications
  • applet to server communication
  • downloadable client model

Server side

Introduce Servlets

  • driver independence and middleware
  • JNDI database lookups
  • JNDI context
  • running JVM models
  • cycling object instances
  • request / response model
  • action on data
  • manipulate JavaBeans (get / set data)
  • session state data
  • Servlet containers
  • deployment

Dynamic user interface

Introduce a dynamic UI with JavaScript.

  • overview of language - syntax and semantics
  • Document Object Model (DOM)
  • browser support - checks to avoid errors
  • basic functions
  • HTML integration
  • event handling
  • form validation
  • browser window control
  • dialog alerts

Separate code from Web design

Partition view generation with JSP

  • dynamic presentation generation problems
  • from Servlets to JSP
  • JSP syntax and semantics
  • declarations
  • scriptlets: Java embedded in HTML
  • JSP and the MVC architecture

e-commerce components

Modularize presentation logic with server beans.

  • JavaBeans access from JSP
  • JavaBeans encapsulation of data and logic
  • threading and integrity issues
  • roles with MVC

e-commerce application templates

Partition dynamic elements from static with JSP templates.

  • custom actions
  • encapsulation of presentation functions
  • tag libraries
  • template mechanism
  • future role of XML
  • current limitations of XML

e-commerce application patterns

Use tested techniques for server side objects, encapsulated in patterns

  • factory pattern and database connection pools
  • factory pattern and lifecycle control
  • command pattern and access to enterprise components
  • mediator pattern and security issues

Please note, when taught at your site, this course is customizable. Modules can be adapted, removed, added from other courses, or even created.

timetable

Day 1

  • Basics of e-commerce
  • Client side
  • Server side
  • Dynamic user interface

Day 2

  • Separate code from Web design
  • e-commerce components
  • e-commerce application templates
  • e-commerce application patterns

course instructor

The course is presented by one of our senior consultants, each of whom has at least ten years' experience in software development, and at least three years' experience as a trainer and consultant in a diverse range of application areas.

print     printer-friendly version