B.Sc. CSIT 7th Semester Advanced Java Programming

Advanced Java Programming Syllabus |Bsc.CSIT Seventh Semester

Full Marks: 60 + 20 + 20

 Course No: CSC409

Pass Marks: 24 + 8 + 8

Nature of the Course: Theory + Lab

Credit Hrs: 3

Course Description: This course familiarizes students with basic as well as advanced features of Java Programming Emphasis will be given to GUI and event-driven programming, Database Connectivity, Socket Programming, Servlets and JSP Technology, and Distributed Programming.

Course Objectives: The main objective of this course is to introduce basic concepts of Java Programming, exemplify the concept of GUI programming and JDBC , demonstrate socket programming, remote objects, and servlet and JSP Technology.

Course Contents:

Unit 1: Programming in Java (8 Hrs.)

1.1. Java Architecture, Java Buzzwords, Path and ClassPath variables, Sample Java Program, Compiling and Running Java Programs.

1.2. Arrays, for each loop, Class and Object, Overloading, Access Privileges, Interface, Inner Class, Final and Static Modifiers, Packages, Inheritance, Overriding

1.3. Handling Exceptions: Try, Catch, Finally, Throws, and Throw keywords, Creating Exception Class

1.4. Concurrency: Introduction, Thread States, Writing Multithreaded Programs, Thread Properties, Thread Synchronization, Thread Priorities

 1.5. Working with Files: Byte Stream Classes, Character Stream Classes, Random Access File, Reading and Writing Objects.

Unit 2: User Interface Components with Swing (10 Hrs.)

2.1. Introduction: Concept of AWT, AWT vs Swing, Java Applets, Applet Life Cycle, Swing Class Hierarchy, Component and Containers

2.2. Layout Management: No Layout, Flow layout, Border Layout, Grid Layout, Gridbag Layout, Group Layout.

 2.3. GUI Controls: Text Fields, Password Fields, Text Areas, Scroll Pane, Labels, Check Boxes, Radio Buttons, Borders, Combo Boxes, Sliders

2.4. Menu, Menu Item, Icons in Menu Items, Check Box and Radio Buttons in Menu Items, Pop-up Menus, Keyboard Mnemonics and Accelerators, Enabling and Disabling Menu Items, Toolbars, Tooltips

2.5. Option Dialogs, Creating Dialogs, File Choosers, Color Choosers, Internal Frames, Frames, Tables, Trees, and Tables.

Unit 3: Event Handling (4 Hrs.)

3.1. Event Handling Concept, Listener Interfaces, Using Action Commands, Adapter Classes

3.2. Handling Action Events, Key Events, Focus Events, Mouse Event, Window Event, Item Events

Unit 4: Database Connectivity (4 Hrs.)

4.1. JDBC Architecture, JDBC Driver Types, JDBC Configuration, Managing Connections, Statements, Result Set, SQL Exceptions

4.2. DDL and DML Operations using Java, Prepared Statements, Multiple Results, Scrollable Result Sets, Updateable Result Sets, Row Sets and Cached Row Sets, Transactions, SQL Escapes.

 Unit 5: Network Programming (5 Hrs.)

 5.1. Transmission control Protocol (TCP), User Datagram Protocol (UDP), Ports, IP Address Network Classes in JDK

5.2. Socket programming using TCP, Socket programming using UDP, Working with URL’s, Working with URL Connection Class.

5.3. Java Mail API, Sending and Receiving Email

Unit 6: GUI with JavaFX (3 Hrs.)

6.1. Introduction, JavaFX vs Swing, JavaFX Layouts: FlowPane, BorderPane, Hbox, VBox, GridPane

6.2. JavaFX UI Controls: Label, TextField, Button, RadioButton, CheckBox, Hyperlink, Menu, Tooltip, FileChooser.

Unit 7: Servlets and Java Server pages (8 Hrs.)

7.1. Web Container, Introduction to Servlets, Life cycle of servlets, The servlet APIs, Writing Servlet Programs, Reading Form Parameters, Processing Forms, Handling HTTP Request and Response (GET / POST Request), Database Access with Servlets, Handling Cookies and Session.

7.2. Servlet vs JSP, JSP Access Model, JSP Syntax (Directions, Declarations, Expression, Scriplets, Comments), JSP Implicit Objects, Object Scope, Processing Forms, Database Access with JSP.

7.3. Introduction to Java Web Frameworks

 Unit 8: RMI and CORBA (3 Hrs.)

 8.1 Introduction of RMI, Architecture of RMI, Creating and Executing RMI Applications

 8.2 Introduction to CORBA, RMI vs CORBA, Architecture of CORBA, IDL, Simple CORBA Program.

Laboratory Works:

The laboratory work includes writing programs related to basic java programming concepts, Designing GUI, Event Handling, JDBC, Network Programming, Web Programming, and Distributed Programming. They also learn to develop web applications using Java Web Frameworks.

Text Books:

1. Cay S. Horstmann, Core Java Volume I–Fundamentals, Pearson, Eleventh Edition, 2018

2. Cay S. Horstmann, Core Java Volume II-Advance Features, Pearson, Eleventh Edition, 2019

3. Herbert Schildt, Java: The Complete Reference, McGraw-Hill Education, Eleventh Edition, 2018

Reference Book:

1. D.T. Editorial Services, Java 8 Programming

About Author

Sarina Sindurakar