Introduction to J2EE - J2410 (Duration 5 days)

J2EE is now one of the most widely accepted and prevalent technologies for enabling distributed computing. It is a technology that encompasses several sub-technologies, such as JSP, Servlets, EJBs, etc. Each aspect of this technology addresses infrastructural requirements for building multi-tier distributed applications. For example, JSPs represent view components while EJBs represent business components.

This course aims to provide a strong foundation and broad exposure to J2EE. Its particular focus is on writing Web Applications using JSPs and Servlets, while introducing concepts such as JNDI, JDBC and EJB Clients. The course concludes with a large project where attendees in teams (or as individuals) implement an end-to-end Web Application using technologies they have learnt in the class.

The course is heavily hands on and provides attendees the opportunity to reinforce knowledge gained in lectures by coding appropriate exercises. The labs focus on end-to-end application development to ensure that the attendees understand all aspects of a J2EE application.

Who Can Benefit?
  • Java developers who want to build distributed object-oriented multi-tier systems
  • Java developers who want to use J2EE (including JSPs, Servlets, JDBC and JNDI)
  • Architects who are considering using J2EE and building multi-tier applications
  • Technical Project Managers and Technical Sales Consultants who have hands on Java experience
  • Experienced programmers with strong Java background.
  • One year of Java programming experience (or equivalent).
  • Basic knowledge of distributed computing.
  • Multi-tier application and database experience helpful.
Topics Covered/Skills Gained
  • Introduction to J2EE application servers
  • JSP programming
  • Servlet Programming
  • Using JNDI
  • JDBC Programming
  • Web Application Security
  • Introduction to Transactions
  • Introduction to JMS

Course Content
Module 1: Getting Started
  • Java Application Servers
  • Multi-tier Applications
Module 2: JSP Programming
  • Declarations, Scriptlets, Expressions
  • Creating, packaging and deploying simple Web Application
  • JSP implicit objects and Error Pages
Module 3: Servlet Programming
  • What are Servlets
  • Coding Servlets
    • init, doGet, doPost, service, etc.
    • servlets and multithreading
    • The deployment descriptor
  • HttpSession Management
    • Cookie based
    • URL Encoding or Rewriting
  • Servlet best practices
Module 4: JSPs revisted
  • JSPs and Sessions
  • JSPs and URLEncoding
  • JSP Actions: useBean and get/setProperty
Module 5: JNDI Programming
  • Introduction to JNDI
  • Using the JNDI API
Module 6: JDBC Programming
  • What is JDBC?
  • JDBC in two-tier applications
  • JDBC in multi-tier applications
    • Data Sources
  • CallableStatements, PreparedStatements and Statements
  • JDBC and transactions
    • Isolation level
    • AutoCommit
  • JDBC best practices
Module 7: Introduction to EJBs and EJB Clients
  • Why EJBs?
  • What are EJBs?
  • Types of EJBs
  • Remote, Home Interfaces and Bean Implementation class
  • EJB Deployment
  • Servlets as EJB Clients
Module 8: Introduction to JMS
  • Asynchronous Communication and MOMs
  • JMS Connection Factory, Connection, Session
  • JMS Destinations - Queues and Topics
  • Message Listeners and introduction to MDBs
Module 9: Web Application Security
  • Authentication vs. Authorization
  • Introduction to JAAS
  • Secure communication and Digital Certificates
  • The login-config
  • Role based security
    • Programmatic security within Servlets
    • Declarative security
Module 10: Introduction to Transactions
  • Single Resource Transaction
  • Multi-Resource (Distributed) Transaction



J2EE Part 1

J2EE Part 2