Advanced Java Programming(AJP) Syllabus

Syllabus Notes Old Questions & solutions Text & reference books

This page contains Syllabus of Advanced Java Programming of CSIT.

Title Advanced Java Programming
Short Name AJP
Course code CSC403
Nature of course Theory + Lab
Semester seventh-semester
Full marks 60 + 20 + 20
Pass marks 24 + 8 + 8
Credit Hrs 3
Elective/Compulsary Compulsary

Course Description

Course Synopsis: A study in Java language techniques beyond the introductory

course. Emphasis will include, GUI and event-driven programming, Database

Connectivity, Socket Programming, Remote Method Invocation and Servlets and JSP


Goal: The purpose of this course is to present the concept of GUI programming and

JDBC, Socket programming and remote objects, and JSP Technology. Since software

components are best learned by implementation, each student will complete a

project independently which will involve the design and implementation three

software components.

Units and Unit Content

1. Programming in Java
teaching hours: 8 hrs
  •  Introduction to Java: Java Architecture, Advantages of Java, PATH and CLASSPATH variables, Compiling and Running Java Programs
  •  Class and Object: Creating Classes, Interfaces, Creating Objects, Access Modifiers, Arrays, Packages, Inheritance
  •  Exception Handling and Threading: Try, Catch, Finally, Throws, Creating Multithreaded Programs, Thread Life Cycle
  •  File IO: Byte Stream Classes (FilleInputStream and FileOutputStream), Character Stream Classes(FileReader and FileWriter), RandomAccessFile Class

2. User Interface Components with Swing
teaching hours: 10 hrs
  •  Swing and MVC Design Patterns: Design Pattern, MVC Pattern, MVC Analysis of Swing Buttons
  •  Layout Management: Border Layout, Grid Layout, Gridbag Layout, Group Layout, Using No Layout managers, Custom layout Managers
  • Text Input: Text Fields, Password Fields, Text Areas, Scroll Pane, Label and Labeling Components
  • Choice Components: Check Boxes, Radio Buttons, Borders, Combo Boxes, Sliders
  • Menus: Menu Building, Icons in Menu Items, Check box and Radio Buttons in Menu Items, Pop-up Menus, Keyboard Mnemonics and Accelerators, Enabling and Design menu Items, Toolbars, Tooltips
  • Dialog Boxes: Option Dialogs, Creating Dialogs, Data Exchange, File Choosers, Color Choosers
  • Components Organizers: Split Panes, Tabbed Panes, Desktop Panes and Internal Frames, Cascading and Tiling
  • Advance Swing Components: List, Trees, Tables, Progress Bars

3. Event Handling
teaching hours: 4 hrs
  •  Introduction: Standard Event Handling, Using Delegated Class, Using Action Commands, Listener Interfaces, Adapter Classes
  •  Handling Events: Action Events, Key Events, Focus Events, Window Event, Mouse Event, Item Events

4. Database Connectivity
teaching hours: 4 hrs
  •  Design of JDBC: Driver Types, Typical Uses of JDBC
  •  JDBC Configuration: Database URLS, Driver JAR Files, Starting Database, Registering Driver class, Connecting to the database
  •  Executing SQL Statements: Managing Connections, Statements, Result Set, SQL Exceptions, Populating Database
  •  Query Execution: Prepared Statements, Reading and Writing LOBs, SQLEscapes, Multiple Results, Scrollable Result Sets, Updateable Result Sets, RowSets and Cached Row Sets, Transactions.

5. Network Programming
teaching hours: 5 hrs
  •  Networking Basics: Transmission control Protocol(TCP), User Datagram Protocol(UDP), Ports, IP Address Network Classes in JDK
  •  Working with URLS: Connecting to URLS, Reading Directly from URLS, InetAddress Class
  •  Sockets: TCP Sockets, UDP Sockets, Serving Multiple Clients, Half Close, Interruptible Sockets, Sending Email

6. Java Beans
teaching hours: 3 hrs
  •  Introduction: Creating, Updating and Reading from JAR Files, Java Beans, Advantages of Java Beans, Class vs Beans, BDK and Bean Box
  • Java Bean: Creating a Java Bean, Creating a Bean Manifest File, Creating a Bean JAR File, Using a New Bean, Adding Controls to Beans, Giving a Bean Properties, Creating Bound Properties, Giving a Bean Methods, Giving a Bean an Icon

7. Servlets and Java Server pages
teaching hours: 8 hrs
  •  Servelets: Introduction to Servlets,Life cycle of servlets, Java Servlets Development Kit, Creating, Compiling and running servlet, The servlet API( javax.servlet package), Reading the servlet Parameters, Reading Initialization parameter, The javax.servlet.http.Package, Handling HTTP Request and
  •  Java Server Pages: Advantage of JSP technology (Comparision with ASP/ Servlet), JSP Architecture, JSP Access Model, JSP Syntax Basic (Directions,   Declarations, Expression, Scriplets, Comments), JSP Implicit Object, Object Scope, Synchronization Issue, Exception Handling, Session Management, Creating and Processing Forms.

8. RMI and CORBA
teaching hours: 3 hrs
  •  Remote Method Invocation: Introduction of RMI, Architecture of RMI, RemoteObjects, Creating and Executing RMI Applications
  •  CORBA: Introduction to CORBA, Architecture of CORBA, Functioning of CORBA Applications, CORBA Services

Lab and Practical works

Laboratory Works:

Student should design at least two Projects. Desktop Application (Address Book,

Library system etc.), Simple network Application (e.g. Chatting Application) or Simple

Web Applications (online banking Application, Online Music Application, etc.)