Course Title Advanced Programming in Java
Course Code SEng6132
CP 5 (2hrs Lecture, 3hrs Laboratory)
Module Title Advanced Programming
Module Number 06
Pre-requisites Object-Oriented Programming
Year III
Semester II
Status of Course Compulsory
Course Description
This course covers topics on Java which includes:, AWT and Swing, I/O Streams,
Multithreading, Network Programming, Java database connectivity (JDBC), RMI, and
Introduction to Servlets.
Learning Outcomes
At the end of this course, students should be able to:
◦ Carry out design and development of complex elements, such as user interfaces,
multiprocessing, and fault-tolerant components;
◦ Write TCP/IP Client Server applications using Sockets;
◦ Write Java applications using the JDBC to make database independent queries; and
◦ Call methods remotely
Summary of Teaching Learning Methods
The learning–teaching methodology will be student-centered with appropriate guidance
of instructor/s during the students‘ activities .There will be Lecture, Demonstrations, Lab
work Tutorials, Reading assignments and group discussions. The course will follow a
rigorous schedule of assignments. Each assignment corresponds to a section of the course
content and textbook. Failure to keep up with the assignments will result in your failing the
course. Each session builds on the prior session and is a required building block for the
following section. It is very difficult for you to be successful in the course if you miss any
class sessions.
Course Contents
Week 1 -3 Chapter 1 - AWT and Swing
1.1.Concepts of AWT and Swing 1.2.Event
Handling
Week 4 & 5 Chapter 2 – Streams and File I/O
2.1. Streams 2.2. Various Stream classes
2.3. Using Streams
2.4. Object Streams 2.5. File Management
Week 6 & 7 Chapter 3 – Multi threading Concept
3.1. Threads vs. process 3.2. Multiple
threads
3.3. Thread priorities 3.4. Synchronization
Week 8 & 9 Chapter 4 – Networking in Java
4.1. Connecting to a server 4.2.
Implementing Servers in Java
4.3. Sockets, ports, URIs
Week 10 & 11 Chapter 5 – Remote Method Invocation
5.1. Overview of RMI 5.2. The RMI
Registry
5.3. The Remote Interface 5.4.
Implementing RMI
Week 12 & 13 Chapter 6 – Java Database Connectivity
6.1. Database Systems – an Introduction
6.2. Structured Query Language
6.3. Installing and setting up JDBC 6.4.
Basic JDBC Programming concepts
6.5. Populating a database 6.6. Executing
Queries
6.7. Scrollable and Updateable Result Sets
Week 14 & 15 Chapter 7 – Servlets
7.1.Servlet Overview and Architecture
7.2.Handling HTTP get Request
7.3.Handling HTTP get Requests
Containing Data
7.4.Handling HTTP post request
7.5.Redirecting Requests to Other
Resources
7.6.Multi-Tier Applications: Using JDBC
from a Servlet
Week 16 Final Exam