LOGO For Immediate Assistance Call 855-211-9361

Open Enrollment

JDBC with Java Web Ap[plications using Servlets JSPs


Call for availability 855-211-9361

JDBC with Java: Building J2EE Web Applications using Servlets/JSPs and JDBC

About This Course

This is a five-day in-depth course geared for software developers who need to understand what J2EE is, what it means in terms of today's systems and architectures, and how to apply basic Servlets and JSPs in implementing and deploying robust, flexible web applications.

Java 2, Enterprise Edition (J2EE) is a powerful platform for building web applications. The J2EE platform offers all the advantages of developing in Java plus a comprehensive suite of server-side technologies. This course tells you what you need to know to design and build your own web applications. You'll learn the details of the key J2EE technologies and how to leverage the strengths of each, with special focus on Servlets and JSPs. At the same time, you'll be learning about the big picture of J2EE and how to design web applications that are robust, efficient, secure, and maintainable. If you want to deliver an application on the web, you'll find this course essential.

Audience Profile

This course is geared for software developers who need to understand what J2EE is, what it means in terms of today's systems and architectures, and how to apply basic Servlets and JSPs in implementing and deploying robust, flexible web applications.


Before attending this course, students are strongly encouraged to have a working knowledge of object-oriented programming languages such as C++.

At Course Completion

Students who attend Building J2EE Web Applications using Servlets/JSPs & JDBC will leave the course armed with the required skills to build basic web applications.

  • Design and build robust, secure, and maintainable web applications
  • Access databases with JDBC
  • Create dynamic HTML content with Servlets and Java Server Pages
  • Make Servlets and JSP work together cleanly
  • Use JSP 2.0, EL, and JSTL to separate Java and HTML code

Course Outline

  • Session: J2EE Application Architecture

    Technical Overview of J2EE
    • What is J2EE?
    • Common Themes In J2EE Framework
    • J2EE Containers and Components
    • Servlets
    • Java Server Pages (JSP)
    • EJBs and Web Services
    • J2EE Containers
    • J2EE Application Modules
    • The J2EE 1.4 Specification
    • J2EE Platform Roles

    J2EE Application Architectures (web based)
    • J2EE and the Web
    • J2EE 1st Generation DB-centric Web Application
    • Adding JSPs to Separate Presentation
    • Eliminating Java code from view
    • The Model 2 Architecture
    • Using EJBs
    • J2EE Infrastructure Supporting Web Applications Lesson Review
  • Session: Web Applications

    Understanding Web Applications
    • J2EE Application Modules
    • The Truth about Archives
    • Enterprise Application Archive (EAR)
    • Enterprise JavaBean Archive (JAR)
    • J2EE Application Client (JAR)
    • Resource Adapter Archive (RAR)
    • Web Application Archive (WAR)
    • Directory Structure

    Configuring Web Applications
    • Mapping an HTTP Request to a Resource
    • The web.xml File
    • Structure
    • Declaring Servlets and JSPs
    • Servlet Mapping
    • Servlet Init Parameters
    • Web Application init Parameters
    • Welcome Page
    • Error Page
  • Session: Developing Servlets

    Introduction to Servlets
    • Servlet Overview
    • Life Cycle of Servlets
    • Servlet Lifecycle is Handled by Web Container
    • HttpServlet
    • Writing the init Method
    • HttpServletdoXXX Methods
    • Writing a Simple HTTP Servlet
    • HttpServletRequest Methods
    • ServletResponse
    • HttpServletResponse
    • Servlet I/O Classes
    • Return a Status Code
    • Building the Output Document
    • Sending Binary Content

    Processing Input Data
    • HTML Form
    • LoginServletdoPost

    Sever-Side Control
    • Request Dispatcher
    • Forward the processing
    • Passing Processing on and Getting it Back
    • Servlet Runs Within Web Container Environment
    • Several Options for Receiving Data
    • Init Parameters and Attributes
    • ServletConfig; ServletContext
    • Servlet Variables are Scoped
    • HTTP Request Information
    • Several Options for Sharing Data
    • Configuration and Context
    • Servlet Variables
    • HttpServlet Request
    • Threading and Data
    • Threading and Data 2

    Client Side Control
    • HTML Form
    • LoginServletdoPost
    • Output Buffering
    • Setting Status Codes; Setting Headers
    • sendRedirect
    • Disabling Client Caching
    • Supporting Persistent Connections
    • Setting Content Length
    • Dynamic Content Pushing

    Maintaining Client State (Sessions)
    • Session Management
    • Tracking Problem - Stateless HTTP
    • Data Problem - Session Data
    • Solving the Tracking Problem
    • Cookies
    • Cookie Behavior; Retrieving Cookies
    • servlet to set Cookies
    • Servlet to Show Cookies
    • URL Rewriting
    • Solving the Data Problem
    • Web Container Manages Session Instances
    • Sessions with Cookies
    • Cookie-Based Sessions
    • Basic Session Implementation
    • Cookie Detection is not Standardized
    • Getting Rid of Http Sessions
    • Session with URL Rewriting

    Application and Session Events
    • Event Listener Model
    • Life Cycle Events in a Web-Application
    • Declare the Listener
    • Type of Events
    • Context Listeners; Session Listeners
    • Session Listeners for Session-Objects
  • Session Filters

    Overview of Filters
    • What is a Filter
    • Single Filter
    • Filter Objects
    • doFilter Method
    • init Method
    • Filter Life Cycle
    • Cascading Filters

    Filtering Requests and Responses
    • Request Wrapper
    • Process the Request
    • Examples of Request Filters
    • Filter the Response
    • Response Wrapper
  • Session: Developing JavaServer Pages

    Introduction to JavaServer Pages
    • Separating Presentation from Model
    • Java Server Page (JSP): An Extension of Servlet
    • Lifecycle of a JSP
    • Servlets
    • Java Server Pages (JSP)
    • Example JSP
    • JSP Syntax Consists of Three Types
    • JSP Scripting:Declarations; Expressions; Scriptlets&Directives
    • The session Attribute
    • The errorPage/isErrorPage Attribute
    • JSP Actions
    • JSP Actions: Include/Forward
    • Typical JSP Access Model
    • JSP Action: useBean
    • Implicit Objects
    • JSPs or Servlets

    JSP Implicit Objects
    • Implicit Objects
    • Page Object; Config Object
    • Request Object; Response Object
    • Out Object
    • Output Buffer
    • Session Object
    • Application Object
    • PageContext Object
    • Attributes
    • Session Attributes
    • Exception Handling

    Actions, Java Beans, and Custom Tags
    • Standard Actions
    • Forwarding; Including
    • Using JavaBeans and JSP
    • Declaring to use a Bean
    • Using a Bean, Example
    • Setting and Getting Properties
    • What are Custom Tags?
    • Create and Use a Custom TagLib
    • Session: JSP 2.0

      • Introduction to JSP
      • JSP 2.0 Specification
      • The web.xml in J2EE 1.4
      • JSP Format Rules
      • JSP Error Pages

      The Expression Language
      • The Expression Language
      • The Expression Language (JSP 2.0)
      • Enable/Disable EL
      • Variables
      • Literals and Operators in the JSP EL
      • Implicit Objects in JSP EL
      • Reserved Words
      • EL Functions
      • Developing the Function
      • Declaring the Function in the TLD
      • Using the Function
      • Pre-Built EL Functions
    • Session: JSTL 1.1

      JSTL Introduction and Core Library
      • Introduction to JSTL
      • Expression Language (EL) in JSTL
      • Review of JSP Bean Tags
      • Tag Collaboration
      • JSTL Core
      • <c:choose&rt;<c:when><c:otherwise>
      • <c:if>; <c:import>;<c:forEach>; <c:forTokens>; <c:out>; <c:param>;<c:catch>;<c:redirect>; <c:remove>; <c:set>;
      • Using c:set to pass HTML
      • <c:url>
      • JSTL Format
      • <fmt:requestEncoding>; <fmt:setLocale>; <fmt:timeZone>
      • <fmt:setTimeZone>; <fmt:bundle><fmt:setbundle>; <fmt:message>
      • <fmt:formatNumber>; <fmt:parseNumber>
      • <fmt:formatDate>; <fmt:parseDate>

      JSTL SQL Library
      • JSTL SQL
      • <sql:query>; <sql:update>; <sql:transaction>; <sql:param><sql:dateParam>

    • JSTL XML
      • <x:choose><x:when><x:otherwise>
      • <x:out>; <x:if>;<x:forEach>; <x:parse>; <x:set>; <x:transform>;<x:param>
      • Simple Tag Handlers
      • Tag Files

      Simple Tag Handlers
      • Tag File Location
      • Tag-Files Outside ofa Library
      • Tag LibraryDescriptors
      • The TLD File
      • The <tag-file>Element
      • Tag File withAttributes
      • jsp:attributeElement
      • Using Attributes
      • jsp:doBody
      • jsp:invoke
    • Session: Database Integration: JDBC and J2EE

      JDBC and Its Position in J2EE
      • JDBC Versions
      • The JDBC API
      • JDBC in J2EE
      • Programming with DataSources
      • JNDI names
      • DataSource Programming Best Practices

      JDBC Data Access API
      • Structured Query Language (SQL)
      • Statements & Statement
      • PreparedStatements
      • PreparedStatement
      • ResultSet
      • Executing Inserts,Updates, and Deletes
      • Mapping SQL Types to Java Types
      • CallableStatement

      The DAO Pattern
      • Data Access Object (DAO)
      • DAO Structure
      • DAO Example: ProductDAO
      • The DAOFactory
      • Complete UML Diagram
      • Using the ProductDAO
      • Session: Additional J2EE Components

        Working With Enterprise JavaBeans"
        • Defining Enterprise JavaBeans
        • JavaBeans" vs EJBs
        • EJB Architecture Overview
        • EJB Container & Types of EJBs
        • Enterprise Bean; Session Beans
        • Entity Beans
        • Message-Driven Bean
        • EJBObject/EJBLocalObject
        • Home Object (EJB Factory)
        • Deployment Descriptor
        • EJB-Jar File

        Web Services in J2EE - WSEE
        • What are WebServices?
        • Web Services Architecturally
        • XML and Web Service APIs
        • Web Services for J2EE - WSEE
        • Servlets as Web Services
        • EJBs as Web Services
        • Routing SOAP requests to an EJB
        • WSDD
      • Session: Security

        J2EE Security
        • Typical J2EE App Server Security Services
        • Java 2 Platform Security Model
        • Java 2 Security in J2EE
        • JAAS Authentication: Who are you?
        • J2EE Security Overview
        • Authorization: Are you allowed access?
        • High-Level Trace of J2EE Authorization
        • Deployment Descriptors Play a Large Role
        • Declaring Secure Resources
        • Declaring the security roles
        • Typical J2EE App Server Security Services
        • Security on the Web; Secure Web Traffic
        • SSL In Action
        • Responsibilities For Security
        • CMS: Declaring HTTPS
        • Authentication Challenge Mechanisms

        Web Application Security Overview
        • Attacks are Constantand Changing
        • Open Web ApplicationSecurity Project
        • Assets are theTargets
        • The Context for DefensiveCoding
        • Attackers Not Hackers
        • Cross-Site Scripting (XSS): Description
        • Defending Against XSS Attacks
        • SQL Injection: Description; Example & Drill Down
        • Defending Against SQL Injection Attacks

        Handling Untrusted Input
        • UnvalidatedInput:Description
        • Protecting a Web Resource
        • Defending a Web Application
        • Defending a Web Application/Resource
        • Responding to Error State
        • Best Practices for Untrusted Data
        • Additional Types of Attacks
      • Session: Additional J2EE Topics

        • Transaction Definitions
        • The ACID Transaction Properties
        • Transaction Lifecycle
        • Overview of a Transactional System
        • J2EE Transaction Support

        Other J2EE APIs
        • Java Message Service(JMS)
        • When is Messaging Used?
        • Two Messaging Models
        • More On Publish/Subscribe
        • Logical View of Publish/Subscribe
        • More On Point-to-Point (P2P)
        • Logical View of Point-To-Point
        • Message Servers
        • JavaMail; JavaMail Architecture
        • XML
        • An XML Document
        • J2EE and XML

        The J2EE Blueprints
        • Overview
        • Key Resources