Advanced Java Programming - Syllabus

Embark on a profound academic exploration as you delve into the Advanced Java Programming course (AJP) within the distinguished Tribhuvan university's BCA department. Aligned with the BCA Curriculum, this course (CACS354) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


Course Description:

This course covers advanced features of Java programming language including, GUI programming, database programming, JavaBeans, JSP, Servlet, and Remote Method Invocation (RMI).

Course Objectives:

The primary objective of this course is to provide concepts of advanced features of Java programming and make students familiar with their uses and applications.


Units

GUI Programming

 Introducing Swing; Creating a Frame; Displaying Information in a Component; Working with 2D   Shapes; Using Color; Using Special Fonts for Text; Displaying Images; Event Handling: Event   Handling Basics, Event Classes, Event Listeners and Adapter Classes; Swing and the MVC Design   Pattern; Layout Management; Basic Swing Components


Database Programming

The Design of JDBC: JDBC Driver Types and Typical Uses of JDBC; the Structured Query  Language; JDBC Configuration; Working with JDBC Statements; Query Execution; Scrollable and Updatable Result Sets; Row Sets


JavaBeans

What Is a Java Bean? Advantages of Java Beans; Introspection; Properties, Events, and Methods Design Patterns; Using BeanInfo Interface; Bound and Constrained Properties; Persistence; Customizers; the Java Beans API; Writing JavaBeans


Servlets and JSP

Background; The Life Cycle of a Servlet; A Simple Servlet; The Servlet API; The javax.servlet Package; Reading Servlet Parameters; The javax.servlet.http Package; Handling HTTP Requests and Responses; Using Cookies; Session Tracking; Introduction to JSP; Using JSP; Comparing JSP with Servlet; Java Web Frameworks


RMI

What is RMI? The Roles of Client and Server; Remote Method Calls; Stubs and Parameter Marshalling; the RMI Programming Model; Interfaces and Implementations; the RMI Registry; Parameters and Return Values in Remote Methods; Remote Object Activation; Simple Client/Server Application using RMI; Comparing RMI with CORBA


Lab works

 Laboratory Work:

The laboratory work includes writing Java programs

• To create GUI applications using swing, event handling, and layout management

• To create applications to work with databases

• To create JavaBeans

•   To create server side web programs using Servlet and JSP

•  To create distributed applications using RMI