MIT4003

Advance Java Programming
Code: 
MIT4003
Year / Semester: 
4th Semester
Objective: 

To equip students with the knowledge of advance java programming.

Credits: 
3

Java as an OOP Language

Defining classes, Modifiers, Packages, Interfaces.

Exception Handling

Introduction, Basics of exception handling in Java, Exception Hierarchy, Constructors and methods in Throwable class, Unchecked and checked exceptions, Handling exceptions in Java, Exception and Inheritance, Throwing user defined exceptions, Redirecting and rethrowing exceptions, Advantages of the exception handling mechanism.

Multithreading

Introduction, Creating threads, Thread life cycle, Thread priorities and thread scheduling, Thread Synchronization, Daemon threads, Thread groups, Communication of Threads.

Files and I/O Streams

Introduction I/O Stream, Java I/O, File Streams, File Input Stream and File output stream, Filter Stream, Random Access File, Serialization.

Applets

Introduction, java Applications versus Java Applets, Applet Life Cycle, Working with Applets, HTML Applet Tag, Java Applet packag.

Database handling using JDBC

Introduction to DBMS, JCBC Architecture, Working with JDBC, Processing Queries, The Transactions Commit and Rollback, Handling Exceptions, Mapping Database types to Java, Accessing Metadata.

Toolkit

Introduction, Basic classes in AWT, Drawing with Graphics Class, Class hierarchy of AWT, Event Hancling, AWT ccontrols, Layout Managers, Java 2D API, Java2D Shapes.

Swings

Introduction, Swing Packages, Hierarchy of swing classes, Advanced layout Managers, Additional Swing Components.

Servlets

Introduction, Running Servlets, Life cycle of the servlet, Servlet API, Multi-tier applications using JDBC from a Servlet, Additional Caabilities of HTTP Servlets, Session Management.

Introduction JavaServer Pages

What Is JavaServer Pages? Why Use JSP? Embedding Dynamic Elements in HTML Pages, The JSP Advantage

HTTP and Servlet Basics

The HTTP Request/Response Model, Requests in Detail, Responses in Detail Request Parameters, Request Methods, Servlets, Servlet Contexts and Web Applications

Setting Up the JSP Environment

Installing the Java Software Development Kit, Installing the Tomcat Server, Windows Platforms, UNIX Platforms (Including Linux and Mac OS X), Testing Tomcat, Installing the Book Examples, Example Web Application Overview

JSP Application Development

Generating Dynamic Content, Creating a JSP Page, Installing a JSP Page Running a JSP Page, Using JSP Directive Elements, JSP Comment, Using Template Text, Using JSP Action Elements, JSP Standard Tag Library

Using JavaBeans Components in JSP Pages

What Is a Bean?, Declaring a Bean in a JSP Page, Reading Bean Properties 6Using the JSTL Expression Language, Including Images with JSP, Setting Bean Properties Automatic Type Conversions

Processing Input and Output

Reading Request Parameter Values, Accessing Other Request Data, Capturing Parameter Values Using a Bean, Validating User Input, Validating User Input Using JSTL Action, Validating User Input Using a Bean, Formatting HTML Output.

Error Handling and Debugging

Dealing with Syntax Errors, Element Syntax Errors, JSTL Expression Language Syntax Errors, Debugging a JSP Application, Dealing with Runtime Errors, Catching Exception,

Sharing Data between JSP Pages, Requests, and Users

Passing Control and Data between Pages, Passing Control from One Page to Another Passing Data from One Page to Another, All Together Now, Sharing Session and Application Data

Accessing a Database

Accessing a Database from a JSP Page, Validating Complex Input Without a Bean, Using Transactions, Application-Specific Database Actions

Authentication and Personalization

Container-Provided Authentication, Application-Controlled Authentication Other Security Concern.

Working with XML Data

Generating an XML Response, Transforming XML into HTML, Transforming XML into a Device-Dependent Format, Processing XML Data

Using Scripting Elements

Using page Directive Scripting Attributes, Implicit JSP Scripting Objects Using Scriptlets, Using Expressions, Using Declarations Mixing Action Elements and Scripting Elements, Dealing with Scripting Syntax Errors

Web Application Models

The Java 2 Enterprise Edition Model, the MVC Design Model, Scalability

Combining JSP and Servlets

Servlets, Filters, and Listeners, Picking the Right Component Type for Each Task Initializing Shared Resources Using a Listener, Access Control Using a Filter, Centralized Request Processing Using a Servlet, Using a Common JSP Error Page .

Developing JavaBeans Components for JSP

Beans as JSP Components, JSP Bean Examples, Multithreading Considerations Chapter

Developing Custom Tag Libraries

Tag Extension Basics, Developing a Simple Action, Developing an Iterating Action, Processing the Action Body Handling Exceptions, The Tag-Handler Lifecycle, Creating the Tag Library Descriptor

Suggested Readings: 
  1. The Java Handbook by Patrick Naughton, Michael Morrison
  2. JavaBeans for Dummies by Emily Vanderveer
  3. Special Edition Using Enterprise Java by Jeff Schneider, Rajeev Arora