Home Contact IAC IAC Facility Booking Gallery

***Admission Started for Batch 20. Admission Open Till Sept 20, 2017. Classes Start on Sept 23, 2017.***

Course: Java Enterprise Web Programming: An Introduction to Java Programming and Web Development using Framework

Introduction


Java is a portable programming language which can be used any types of operating system. In addition to the PCs, workstations and servers there are now billions of Java enabled devices worldwide. This is why skilled Java Programmers are now in demand. Web based application is also an example of portable application development. That is why Java is considered an aristocratic way of Web programming.The Database Management and Administration (DMA) using Oracle Database 11g course offered from Information Access Center (IAC) is an essential database course for all database professionals who want to have a strong foundation and expertise in the industry's most advanced database management system, Oracle 11g.

Objectives

  • To enrich the learners with the knowledge of Object Oriented Programming, which is different from structured programming
  • To provide a comprehensive knowledge of Java Programming Language.
  • To introduce the idea of web programming
  • To introduce the idea of Model View Controller Design pattern in Web based software development
  • To make the students familiar with frameworks, which gives the opportunity to reuse the codes for quick development
  • To provide the knowledge of the secured web development technique

Outcome of the Learning

  • The students will learn software development using java and they will get the preliminary lesson for programming java enabled devices
  • The students will able to develop web based applications and deploy it to the web server for commercial use
  • The students will be able to write application for dynamic web sites which uses database storages
  • Students will be able to work in the following areas where the java programmers could play the significant roles as programmers:
    • In the outsourcing firms which develops software for different devices
    • The service organizations which provides services through web applications
    • The financial organizations requires secured web based development and they requires lots of java programmer for enable their services to the users through the Internet and SMS
    • In the scientific community java is very much popular for doing simulation and visual representation. So the researchers must require the knowledge of java programming

Class Schedule


The course length will be 8 weeks with two classes in each week and 3 hours in each class. The lecture plan of the course is as follows:

Week# Content
1 Creating Java Applications
Using Classes and Objects
Control Statements
Methods
2 Arrays
Classes and Objects
Inheritance
Polymorphism
3 Exception Handling
Introduction to Java Web Development
MVC Architecture
4 Web Development Basics: HTML, CSS, CGI scripts, and Java Technologies
5 Servlets
Java Server Pages
6 Servlets and Java Server Pages
Database and JDBC
7 Java Standard Tag Library (JSTL)
Java Server Faces
8 Ajax Enabled Java Server Faces

Detailed Course Content

Creating Java Applications

Introduction to Java Applications, Displaying Text with printf, Variables and Introducing Arithmetic Operators, Equality and Relational Operators.

Using Classes and Objects

Classes, Objects, Methods and Instance Variables, Declaring Class and Methods, Instantiating an Object of a Class, Declaring a Method with a Parameter, Instance Variables, set Methods and get Methods, Primitive Types vs. Reference Types, Initializing Objects with Constructors, Floating-Point Numbers and Type double, Creating Packages

Control Statements

if Single-Selection Statement, if - else Double-Selection Statement, while Repetition Statement, Counter-Controlled Repetition, Sentinel-Controlled Repetition, Nested Control Statements, Compound Assignment Operators, Increment and Decrement Operators, Primitive Types, Essentials of Counter-Controlled Repetition, for Repetition Statement, do - while Repetition Statement, switch Multiple-Selection Statement, break and continue Statements, Logical Operators.

Methods

Static Methods, static Fields, Notes on Declaring and Using Methods, Argument Promotion and Casting, Java API Packages, Generalized Scaling and Shifting of Random Numbers, Scope of Declarations, Method Overloading.

Arrays

Declaring and Creating Arrays, Examples Using Arrays, Enhanced for Statement, Passing Arrays to Methods, Multidimensional Arrays

Classes and Objects

Controlling Access to Members, Referring to the Current Object's Members with the this Reference, Overloaded Constructors, Default and No-Argument Constructors, Composition, Enumerations, Garbage Collection and Method finalize, final Instance Variables

Inheritance

Superclasses and Subclasses, protected Members, Relationship between Superclasses and Subclasses, Creating an Inheritance Hierarchy, Using protected Instance Variables, Using private Instance Variables, Constructors in Subclasses, Software Engineering with Inheritance

Polymorphism

Polymorphism Examples, Demonstrating Polymorphic Behavior, Abstract Classes and Methods, Polymorphic Processing, Operator instance of and Downcasting, Allowed Assignments Between Superclass and Subclass Variables, final Methods and Classes, Creating and Using Interfaces, Declaring Constants with Interfaces, Common Interfaces of the Java API

Exception Handling

Exception-Handling Overview, When to Use Exception Handling, Java Exception Hierarchy, finally Block, Stack Unwinding, printStackTrace , getStackTrace and getMessage, Chained Exceptions, Declaring New Exception Types, Assertions

Multi-threading

Basics of multi-threading, creating threads with Thread and Runnable, Synchronized blocks and synchronized methods, Thread join, sleep, yield, Timer class

MVC Architecture

What is MVC? Models, Views, Controllers, Routes

The Presentation Tier

Java Server Pages:

JavaServer Pages Overview, A First JavaServer Page Example, Implicit Objects, Scripting, Scripting Components, Scripting Example, Standard Actions, Action, Action, Action, Action, Directives, page Directive, include Directive, Custom Tag Libraries (Java beans and others), Creating a Custom Tag, Tag Attributes, Evaluating the Body of a Custom Tag

The Logic/Application Tier

Servlets:

Servlet Overview and Architecture, Interface Servlet and the Servlet Life Cycle, HttpServlet Class, HttpServletRequest Interface, HttpServletResponse Interface, Handling HTTP get Requests, Setting Up the Apache Tomcat Server, Deploying a Web Application, Handling HTTP get Requests Containing Data, Handling HTTP post Requests, Redirecting Requests to Other Resources, Session Tracking, Cookies, Session Tracking with HttpSession, Multi-tier Applications: Using JDBC from a Servlet, HttpUtils Class

The persistence Tier (Model)

Database and JDBC

Structured Query Language (SQL), Basic SELECT Query, WHERE Clause, ORDER BY Clause, Merging Data from Multiple Tables: Joining, INSERT INTO Statement, UPDATE Statement, DELETE FROM Statement, Creating Database books in Cloudscape, Manipulating Databases with JDBC, Connecting to and Querying a JDBC Data Source, PreparedStatements, Transaction Processing, Stored Procedures, Batch Processing, Processing Multiple ResultSets or Update Counts, Updatable ResultSets, JDBC, DataSource, Connection Pooling, RowSets

Java Beans

Overview, Using Java Beans to create model objects and access database

Java Server Faces

Java Web Technologies, Servlets, JavaServer Pages, JavaServer Faces, Web Technologies in Netbeans, Creating and Running a Web Application in Netbean, Examining a JSP File, Examining a Page Bean File, Event-Processing Life Cycle, Relationship Between the JSP and Page Bean Files, Examining the XHTML Generated by a Java Web Application, Building a Web Application in Netbeans

Ajax Enabled Java Server Faces

Accessing Databases in Web Applications, Building a Web Application That Displays Data from a Database, Modifying the Page Bean File for the AddressBook Application, Ajax-Enabled JSF Components, AutoComplete Text Field and Virtual Forms, Configuring Virtual Forms, JSP File with Virtual Forms and an AutoComplete Text Field, Providing Suggestions for a AutoCompleteText Field, Google Maps Map Viewer Component

Learning and Evaluation Method

  • The class room will be equipped with multimedia projector
  • The electronic document of class notes will be supplied
  • Two faculty members of CSE, BUET will be teaching during the demonstration in each class
  • Each student will get a PC to do proper practice and the class size will be not more than 30 students
  • There will be on line (during the classes) exams, offline (home work) assignments, and project works to solve practical problems
  • There will be quizzes in every week to evaluate the class performances of the last two classes.
  • A final exam will be held at the end of the course.

Further Query

Email: iac@cse.buet.ac.bd
Phone: 880-2-8618344-49 Ext-6438, mobile : 01552-015596