AGENDA
1. Overview
·
HTML, web servers, and browsers
·
Javascript
·
Java and Application Servers
2.
HTML (1) – static pages
·
What is it
o
Web Servers (Apache, IIS, etc) - what they do
o
Web Browsers (IE, Netscape, Opera, etc) - what they do.
o
Web server document root directory
o
URL addressing
·
Basic HTML syntax
·
Deploying HTML to a web server
·
Lab: create & deploy a simple HTML page using
notepad
·
Positioning (CSS vs. Tables)
o
Using HTML tables to position elements
o
Using HTML tables to position elements
o
Lab: modify static HTML to position elements via tables
and CSS
3. HTML(2) – Forms
·
Forms
o
Basic syntax
o
Get and Post
o
CGI vs. Servlets
o
Interaction between a servlet and an HTML form
·
Tools
o
HTML syntax-aware text editors (Medit, NoteTab, LPEX,
etc)
o
HTML WYSIWYG editors (Frontpage, Dreamweaver, etc)
o
HTML validators
·
Reference Materials
·
Lab S1: create & deploy a simple HTML form using a
supplied servlet
4. Javascript
·
What is it
·
Why do you use it
·
How do you use it
·
Basic syntax
·
Accessing form variables
·
How you add data-entry validation to a form
·
Reference Materials
·
Lab S2: Add data-entry validation to the form developed
in Lab S1
5.
Java (1) – Basic Syntax
·
What is it:
o
Program types (Application, Applet, Servlet)
o
Programs, JavaBeans, and EJBs
o
What Javac does
o
What a JVM does
o
Sun JDK -
o
Java syntax-aware text editors (Medit, NoteTab, LPEX,
etc)
o
Java IDEs (VA Java, VisualCafe, Jbuilder, etc) -what
they do
o
Use of the Classpath
Java
(1) (cont)
·
Basic syntax
o
Simple Java programs
o
Use of the Classpath
·
Lab: ‘Hello World’ Java application.
o
Variables: defining, using, scope, hiding
o
Calculations
o
Control: If / else, switch, while, for, etc.
·
Lab: Variables and control
6.
Java (2) – Methods and Classes
·
Methods
o
How do you invoke them
o
How do you pass parameters
o
How are they defined
·
Classes
o
OO structure
o
Variables (basic vs. classes)
o
Methods
o
Inheritance
·
Packages
o
Grouping functions: com.bridgewater.util
o
Importing and using classes
·
Lab: ‘Simple calc’ Java application.
7. Object Oriented
Development
·
What is OOD?
·
Why use OO?
·
Patterns – what are they?
·
UML – what it is and what it is not.
8.
Java (3) - Servlets
·
Application Servers (Websphere, Tomcat, etc)
o
What they do
o
Servlets and JSP
o
EJB Containers
o
Effect of the Classpath
·
Servlet structure: init, destroy, doget, dopost
·
Servlet session data: saving private data – program
data vs. project data
·
Deploying a servlet
·
Reference Materials
·
Lab S3: modify and re-deploy the servlet used in Lab S2
to override a method and add business logic.
9. The
Model-View-Controller approach
·
Suggested structure for an MVC approach:
·
Using an HTML form file
·
Using an HDML or WML file for mobile web access
·
Check browser type, and send HDML or HTML
·
Getting and setting values from HTML form fields
·
Using inheritance to keep business logic and program
logic apart.
·
Review servlet code
10. HTML (3)
·
Frames – showing multiple HTML pages at once
·
Going beyond text fields: using more advanced GUI parts
in HTML forms
·
Multi-line text fields,
Check boxes, Radio buttons, Drop-down lists
·
HTML syntax
·
How a servlet sets and reads the values from non-text
form parts.
·
Static value lists vs. data-driven lists.
·
Lab S4: modify the HTML form and the servlet used in Lab
S3 to change one field to a checkbox, and another to a drop-down list.
11. Java (4) Database
access in Java
·
ODBC bridge vs. native database drivers
·
Syntax of JDBC
o
Select row via cursor and fetch
o
Select row via prepared statement
o
Update row
·
Syntax of SQLJ
o
Select row
o
Update row
o
Requirements for host variables
·
JDBC vs. SQLJ
o
Pros and cons of both
o
Impact on development – SQLJ preprocessor
·
Lab S5: Modify
the database IO code used by the servlet in Lab S4 – change the SQL.
12. Java (5) Access to
mainframe resources
·
Why access mainframe resources
·
Accessing a DB2 database
·
Using CICS Transaction Gateway to call Cobol Programs
13. Using an IDE:
VisualAge Java
·
Basic operation of the IDE
·
Code management
·
Editor
·
Debugger
·
Websphere Test Environment
·
Labs: creating and debugging applications and servlets.
14. Putting it all
together
Lab S6:
Modify the form and servlet used in Lab S5 – add a new field
to the form and Programdata class, add code to the servlet to get and
set the new field, and add a method to perform database IO to compute
the value for the field after each ‘Select’, ‘Browse’, or
‘Update’ action.
15. Wrap-up
·
Summary of class
·
What’s next