Course Number: JAVA.035
Duration: 3 days (full-day sessions) OR Weekend/Evening sessions
Training Overview: This JSP and Servlets training course teaches beginning and early Java developers how to build database-driven Web applications using JavaServer Pages and Java Servlets.The JSTL section of this course teaches attendees how to use the powerful JSP tag libraries provided at no charge by the Jakarta Taglibs project. By encapsulating powerful functionality within easily understood, compact syntax, the JSTL makes it possible for Java developers to create JSP applications much more quickly.
Location and Pricing: Most of our courses are conducted online OR at our training facility and are customized to meet our students needs. We also provide customized onsite training at our clients' locations. Pricing for an online course depends on if its a weekend/evening course or a full day course. The weekend/evening courses are most cost-effective as they are spread over a period of weeks giving you ample time to complete the hands-on exercises. To receive a customized proposal that will fit your schedule and price quote, please contact us 
Training Prerequisites: Beginning Java Application Development or equivalent experience.
Training format: This class is 60% hands-on, 40% lecture, with one-on-one dedicated time-slots with the instructor.
Training Materials: All students receive a copy of related courseware / material.
Software Needed on Each Student PC:
- Any operating system that supports Java 1.5.0 or later
- Java SE SDK 1.5, 1.6, or later
- Java IDE of your choice (We will advise on specific versions of the software required based on your standard development and production environments.)
- Additional software - please contact us for a detailed setup sheet
Training Objectives:
- Design and build robust and maintainable web applications
- Create dynamic HTML content with Servlets and JavaServer Pages, using the JSP Standard Tag Library (JSTL)
- Make Servlets and JSP work together cleanly
- Use JSTL and other Custom Tag Libraries to separate Java and HTML code
- Access databases with JDBC
- To teach attendees how to use the tags from the Java Standard Tag Library (JSTL) to accelerate the development of database-driven Web applications
Training Outline:
- Java EE Introduction
- Java EE Overview
- Java EE Technologies
- Java EE Architecture
- MVC
- Servlets and JSP with JSP Standard Tag Library (JSTL)
- Web Application Basics
- How the Web works, Thin Clients, TCP/IP
- HTTP overview, Brief HTML review
- Overview of Java EE, servlets & Web applications.
- Servlet Basics
- Servlet API
- HTML Forms
- HTTP: Request-response, headers, GET, POST
- Overview: How Servlets Work
- Servlet Lifecycle: init(), service(), destroy()
- Requests and responses
- Core Servlet API: GenericServlet, ServletRequest, and ServletResponse
- HTTP Servlets: HttpServletRequest, HttpServletResponse and HttpServlet
- Accessing Parameters
- Additional Servlet Capabilities
- HTTP headers and MIME types
- RequestDispatcher: Including and forwarding
- Sharing data with the request object attributes
- Sharing data with ServletContext attributes
- Error Handling
- JavaServer Pages
- Basics and Overview
- JSP architecture
- JSP tags and JSP expressions
- Fixed Template Data
- Lifecycle of a JSP
- Model View Controller (MVC)
- Model 1/Model 2 Architecture
- Data Sharing among servlets & JSP
- Object scopes or "buckets"
- Request, application, session and page scope
- Predefined JSP implicit objects (request, session, application, page)
- <jsp:useBean>
- <jsp:getProperty>, <jsp:setProperty>
- <jsp:include>, <jsp:forward>
- Using Custom Tags
- Custom tags overview
- Reducing JSP complexity
- Tag Libraries
- Tag Library Descriptor (TLD)
- Loading a tag library in a web app
- The JSTL
- JSP Expression Language (EL)
- Using custom tags
- The c:url, c:param, c:forEach, c:out tags
- More JSP Capabilities and Session Management
- HTTP as a stateless protocol
- Hidden form fields
- Cookies: Overview, API, Using cookies
- Session overview: Cookies and session tracking
- HttpSession
- Putting data into a session object
- Retrieving data from a session object
- Using session data in servlets and JSPs
- Additional JSP Capabilities
- Exception handling and error pages
- Directives (page, include, others)
- Import declarations
- Multithreading considerations and data safety
- SingleThreadModel interface
- Additional JSP Capabilities
- JSP Directives
- JSP Error Pages
- JSP and Java
- Declarations, Scriptlet overview, Scriptlet syntax
- More JSTL
- Core JSTL design principles
- The JSTL Expression Language
- Naming conventions for JSTL actions
- Scoped variables versus scripting variables
- Understanding JSTL expression language (EL)
- Overview of EL
- Expressions
- Identifiers
- Operators
- Type coercion
- Literal values
- Implicit objects
- Method invocation
- EL expressions in custom actions
- Common mistakes
- General-purpose and conditional actions
- General purpose actions with c:out, c:set, c:remote, and c:catch
- Conditional actions
- Using conditional and general-purpose actions together
- Iteration actions
- The c:forEach action
- The c:forTokens action
- Iteration status
- Custom iteration actions
- Expressions, Type Coercion, Operators, String concatenation, Implicit Objects
- Overview of JSTL libraries
- The Core JSTL Library
- General Purpose: c:out, c:set, c:catch
- Conditional: c:if, c:choose,
- Overview of other capabilities
- Additional Topics
- Servlet Filter overview
- Filtering examples, lifecycle, & filter chains
- Filter API, Modifying a request, Modifying a response
- Struts Overview
- Advanced MVC – Struts overview
- Command and State patterns
- Struts View and Controller elements
- JDBC
- Introduction
- Relational Database and JDBC Overview
- Overview, Table Relationships, Web Based Data Access, JDBC Characteristics
- JDBC Architecture, JDBC API Overview
- DriverManager, JDBC Drivers
- Naming databases with JDBC URLs
- Connecting to a database
- Connection interface, Establishing a connection
- DataBaseMetaData
- Handling Database Exceptions
- Data Access
- DAO – Data Access Objects, O-R Mapping, Value Objects
- Processing Database Data
- Executing statements, precompiled statements and stored procedures
- Processing ResultSets,
- Dealing with Null data
- Updating, inserting, retrieving data
- Controlling Transactions
- JDBC Driver Types
- DataSource
- Java EE and DataSource, Using JNDI
- Connection Pooling
- Overview, Usage, Advantages
- Advanced Topics
- Other Database Access Technologies
- SQLJ, O-R Mapping Tools, JDO (Java Data Objects), EJB Entity Beans
- Advanced JDBC Features
- Batch Updates, Scrollable Result Sets, Rowsets, User Defined Types, BLOBS, CLOBS
|