HTML
1. Introduction to HTML
History and Evolution of HTML
What is web-page & website?
What is HTML?
HTML Editors (Notepad, VS Code)
Understanding the structure of an HTML document.
Difference Between Tags & Elements
HTML Block (
) Level & Inline () Elements
Basic HTML tags ( , , , , , , )
Types of an HTML Tags (Container/Complete & Empty/Void)
HTML Attributes, HTML Comments, Creating simple web pages
using: Heading Tags: , Paragraph Tags: , , , HTML-4 (, )
2. Text Formatting, Links and Colors
Text elements formatting ( , , , , , , , , , , , )
Quotation & Citation ( , , , , , )
Favicon
Links (CSS)/Hyperlinks() and Anchors ()
Relative vs. Absolute URLs
Lists (Ordered , Unordered , Definition , Nested List, nav)
HTML Colors: Pre-Defined color names, HEX, RGB, RGBA, HSL, HSLA,
HWB
3. Images, Multimedia & Embedding
Adding images (), Image Map
Embedding videos () and audio ()
Embedding other media (YouTube, maps, etc.)
4. HTML Forms
Creating forms ( , , , )
Input types and attributes (text, password, checkbox, radio, submit)
Form validation (required fields, pattern matching)
5. HTML5 Semantic Elements
Understanding semantic HTML ( , , , , )
Importance of Accessibility and search engine optimization (SEO)
Building a semantic layout
6. Tables and Frames
Creating tables ( , , , )
Table: padding & spacing, styling. colgroup, size, headers
Table attributes (spanning rows/columns, borders)
Introduction to iFrames ()
i-Frame: src, title, height, width, border, border:none, scrolling
disabled, placeholder, responsive
7. Basic CSS for Styling
Inline, internal, and external CSS
Basic styling properties (color, font, background, margin, padding)
Class and ID selectors
8. Advanced CSS for Layout
Flexbox layout system
Grid layout system
Responsive design basics with media queries
9. CSS Transitions & Animations
Adding transitions (hover effects)
Basic animations with @keyframes
Applying animations to HTML elements
10. Advanced Forms & Web APIs
Using advanced input types (date, color, range, etc.)
Form validation using HTML5 attributes
Introduction to Web APIs for HTML forms
11. HTML5 Canvas
Introduction to
element
Drawing basic shapes & patterns
Simple animations using canvas
12. Web Storage & Offline Capabilities
HTML5 localStorage & sessionStorage
Storing user data locally
Introduction to offline capabilities (Application Cache)
13. HTML Accessibility & SEO Best Practices
Making web pages accessible to all users (ARIA)
SEO-friendly HTML practices
Importance of proper semantic markup
14. Testing, Debugging & Conclusion
HTML validators and testing tools
Debugging common HTML issues
Final project presentations and wrap-up.
15. Industry-Level Project
Build a full-fledged web page or mini-website using HTML, forms,
multimedia, and canvas elements
Integrating responsive design with media queries.
CSS
Introduction to CSS
What is CSS?
How CSS works with HTML
Syntax and structure of CSS
Types of CSS (Inline, Internal, External)
Selectors
Element Selector
Class Selector
ID Selector
Grouping Selectors
Universal Selector
Descendant & Child Selectors
Attribute Selectors
Color & Background
Color Naming and Values (HEX, RGB, RGBA, HSL)
Background-color
Background-image, repeat, position & size
Gradient backgrounds
Text Styling
Font properties (font-family, font-size, font-weight)
Text properties (color, text-align, text-decoration)
Line-height, letter-spacing, and word-spacing
Text transformations (uppercase, lowercase)
Box Model & Positioning
Content, Padding, Border, and Margin
Box-sizing
Width and Height properties
Display property (block, inline, inline-block)
Position (static, relative, absolute, fixed)
Float and Clear
Layout & Responsive Design Basics
Flexbox basics (justify-content, align-items)
CSS Grid Layout (grid-template, grid-areas, grid-gap)
Media queries
Units (px, em, rem, %, vh, vw)
Basic mobile-first design
CSS Variables & Transitions
Declaring & using CSS variables
Global and local scope
Inheritance and fallback values
Transition property
Keyframes in CSS animations
Animation timing and delays
Advanced Selectors
Pseudo-classes (:, etc.)
Pseudo-elements (::before, ::after)
Advanced attribute selectors
Combining selectors
Transformations & Advanced Responsive Design
2D and 3D transforms (translate, rotate, scale, skew, perspective)
Using transitions with transforms
Complex media queries
Responsive typography (fluid fonts)
Responsive images (srcset, picture element)
Advanced Layout Techniques
Advanced Flexbox concepts (align-content, flex-grow, flex-shrink)
Multi-column layout
Positioning techniques (sticky, z-index, stacking context)
CSS3 Basics
CSS3 Selectors (attribute, pseudo-classes, structural selectors)
CSS3 Color models (RGBA, HSLA)
CSS Gradients (linear, radial)
Opacity and transparency
CSS3 Effects & Advanced Animations
Text shadow, Word wrapping & text overflow
CSS3 Animations (keyframes, cubic-bezier, steps)
Flexbox deep dive & CSS Grid layouts
Media Queries in CSS3 for advanced responsive layouts
JAVASCRIPT
Introduction to JavaScript
What is JavaScript?
Why use JavaScript?
History of JavaScript
What is ECMAScript (ECMA)?
Where to write JavaScript (Browsers, Editors)?
Comments in JavaScript
Console Methods: -log(), error(), warning(), table()
Events in JavaScript
What is an Event?
Mouse Events: -onclick(), onmousedown, onmouseup, onmouseover,
onmouseout
Form Events: -onchange, onfocus, onblur, Getting Values from HTML
Forms
Keyboard Events: -onkeydown, onkeyup, onkeypress
Functions
What are Functions?
Pre-defined and User-defined
Parameterized and Non-parameterized functions
Functions with & without return values
Arrow Functions
Constructor Functions
Variables, Data Types & Operators
What are Variables?
Data Types in JavaScript
Interaction Boxes: alert, prompt, confirm
Operators: -Arithmetic, Assignment, Comparison, Logical,
Increment/Decrement, Unary Operators, Special Operators: typeof,
instanceof, delete
Concatenation & Template Literals (Backtick)
Use strict directive
ParseInt(), parseFloat()
Text Processing & Indexed Collections
String Object: -Properties: length, Methods: concat(), indexOf(),
slice(), split(), substring(), trim()
Array Methods: -concat(), join(), pop(), push(), shift(), unshift(),
splice()
Selecting HTML Elements: -getElementById(),
getElementByClassName(), getElementByTagName(),
querySelector(), querySelectorAll()
addEventListener()
Timing Events & Set Methods
Window Methods: -setTimeout(), setInterval()
Practical Exercise: Create a countdown timer or clock using
setInterval()
MCQ/Template: Implement practical exercises for timers.
Control Statements & Decision Making
What are Control Statements?
Decision Control Statements:
o Simple if, if-else, else-if ladder, Nested if, Switch Case
o Ternary Operator (?)
Practical MCQ/Template:
o Code-based decision-making practice
DOM Manipulation Basics
Document Object Model (DOM):
o document.write()
Selecting HTML Elements:
o getElementById(), innerHTML, innerText
Modifying Elements
Practical:
o Create a webpage that changes content dynamically
Loops and Iteration
Looping Statements: Entry Control and Exit Control
o Entry Control: for, while
o Exit Control: do-while
Break and Continue Statements
Practical Exercise: Create two star pattern programs
MCQ/Template: Test understanding of loops with code examples
Introduction to jQuery & Setup
Overview:
o What is jQuery?
o Downloading and installing jQuery
o Setting up a basic jQuery-enabled page
o Overview of jQuery's features and importance
Practical Exercise:
o Create a basic HTML page with jQuery linked and perform
simple DOM manipulations (changing text, colors, etc.)
Advanced Event Handling
Window Events:
o onload, onscroll
Window Object Methods:
o print(), location (redirect)
Form Events:
o onsubmit(), preventDefault()
Practical Exercise:
o Build a form with validation and preventDefault handling
Arrays and Objects
Arrays:
o What is an Array? Creating Arrays, Accessing Elements
Objects:
o What is an Object? Accessing Object Properties
Looping through Arrays and Objects
Array Methods:
o map(), filter()
Array Destructuring, Spread Operator
Working with Standard Built-In Objects
Math Object:
o Math.PI, Math.ceil(), Math.floor(), Math.pow()
o Math.random(), Math.sqrt()
Date Object:
o getDate(), getDay(), getFullYear(), getHours()
o getMilliseconds(), getMinutes(), getMonth(), getTime()
Practical Exercise: Build a simple date and time application
jQuery
Retrieving & Traversing Page Content
jQuery Selectors and Filters:
o Basic jQuery selectors
o Basic jQuery filters
o Attribute filters
o Child, visibility, and content filters
o Form selectors and filters
Traversing Documents:
o DOM traversal methods: parent(), children(), find(), closest()
Understanding jQuery Statements:
o How chaining and combining jQuery methods work
Practical Exercise:
o Use selectors and filters to extract and manipulate elements
from a form or content-heavy page
Advanced DOM Manipulation
What is DOM?
DOM Tree: Usage, Properties, Methods
Manipulating Elements:
o createElement(), createTextNode()
o Modifying content with appendChild(), insertBefore(),
replaceChild(), removeChild()
CSS Selectors:
o querySelector, querySelectorAll(), id, class, tag-name
o Multiple selectors, getting element child, by attribute
Axios & Fetching Data
What is Axios?
Fetching Data using Axios (JSON Placeholder or RapidAPI)
Practical Exercise: Fetch and display data from an API
Error Handling with Axios
Final Project & Review
Combine all learned concepts to build a small project:
o DOM Manipulation, Event Handling, API calls (Axios)
MCQ/Template: Final assessment with practical problems
Review and Q&A session
Binding & Unbinding Events
Event Handling:
o Binding and unbinding events
o Convenient event helper methods: click(), dblclick(), hover(),
etc.
o Using the jQuery event object (understanding event
properties)
Practical Exercise:
o Create a webpage with interactive buttons and bind events to
them using jQuery
o Utilize the event object to capture event details (e.g., mouse
coordinates, target element).
Manipulating Page Content
Content Manipulation
Creating, getting, and setting content: html(), text(), val()
Manipulating attributes: attr(), prop()
Inserting content: append(), prepend(), before(), after()
Wrapping, replacing, and removing content
Working with CSS in jQuery
o Adding, removing, and modifying CSS classes (addClass(),
removeClass(), css())
Practical Exercise
o Build a page where users can dynamically update and modify
content, attributes, and CSS styles using jQuery
jQuery Animations & Effects
Built-in Effects:
o Hiding and showing elements: hide(), show(), toggle()
o Fading elements in and out: fadeIn(), fadeOut()
o Sliding elements: slideUp(), slideDown()
Custom Animations:
o Creating custom animations using the animate() method
o Understanding animation queues and delays
Practical Exercise:
o Build a webpage with animated transitions (e.g., image slider,
content sections that fade in or slide)
Introduction to Bootstrap & Basic Setup
Introduction to Bootstrap
o What is Bootstrap?
o Advantages of using Bootstrap in Web Development
o Bootstrap vs. custom CSS
Getting Started with Bootstrap
o Setting up a Bootstrap environment (via CDN, npm)
o Understanding the Bootstrap file structure
Grid System Basics
o What is the Grid System?
o Breakpoints and responsive design
o Creating basic layouts with the grid system
Typography in Bootstrap
o Working with text classes
o Headings, paragraphs, and display headings
o Text alignment, colors, and formatting
Basic Components and Utilities
Bootstrap Components Overview
o Buttons, alerts, badges
o Cards, images, and responsive embeds
Forms and Form Controls
o Basic form structure
o Form groups, input types, labels & help text
o Validation states for forms
Bootstrap Utilities
o Spacing (margins and padding)
o Borders, backgrounds, colors, and shadows
o Flexbox utilities
o Display utilities and visibility classes
Navigation and Layout
Navigation Components
o Navbar and its customization
o Navs and navbars (tabs, pills, vertical navs)
o Dropdowns and their implementation in navigation
Creating Responsive Layouts
o Advanced grid usage (auto-layout columns equal-width
columns)
o Offset and order in Bootstrap Grid
o Using Bootstrap's container system (fluid & fixed containers)
jQuery UI Introduction & Event Handling
Working with jQuery UI
o Downloading and installing jQuery UI
o Overview of jQuery UI's widgets and effects
Advanced Event Handling
o Understanding the jQuery event-handling features
o Implementing drag-and-drop or resizable elements using
jQuery UI
Practical Exercise:
o Add a jQuery UI widget (e.g., date picker or resizable element)
to a form or webpage for enhanced user interaction
Advanced jQuery UI Widgets & Effects
Putting it All Together:
o Overview of the sample website using jQuery
o Using jQuery UI widgets: accordion, image rotator, hover
tooltips
o Creating interactive elements: image selectors, resizable
effect
Exploring jQuery UI Widgets and Effects:
o Accordion widget
o Using the Resizable effect
Practical Exercise:
o Develop a feature-rich page utilizing multiple jQuery UI
components like accordions, tooltips, and image selectors
BOOTSTRAP
Advanced Layouts, Images & Media
Customizing Grid and Layouts
o Nested rows and columns
o Using utility classes to change the layout for various
breakpoints
o Media queries for responsive designs
Media Objects
o Bootstrap media object system (media alignment and list
media)
o Handling images, thumbnails & figure elements
Carousel Component
o Creating image sliders and carousels
o Customizing carousel controls and indicators
Customizing Bootstrap & Sass Basics
Customizing Bootstrap Variables
o Introduction to Sass for Bootstrap customization
o Changing default Bootstrap theme colors & styles
o Working with Bootstrap's variables (e.g., colors, spacings,
typography)
Compiling Sass
o Introduction to tools for compiling Sass (using npm, gulp, etc.)
o Customizing Bootstrap components with Sass
Bootstrap Advanced Components
Modals and Tooltips
o Creating modals and customizing their content
o Tooltips and popovers for better user interaction
Accordions and Collapse
o Creating accordion-style collapsible elements
o Customizing collapse for better UX/UI
Pagination and Breadcrumbs
o Creating and customizing pagination
o Building breadcrumbs for navigation aids
jQuery UI Plugins & Theming
jQuery UI Plugins:
o Introduction to jQuery UI Plugins
o Exploring jQuery UI widgets and effects in-depth
Using the jQuery UI ThemeRoller
o Customizing the look and feel of a webpage using
ThemeRoller
o Changing themes dynamically
Final Project:
o Build a mini project integrating multiple aspects of jQuery
learned throughout the course: selectors, event handling,
animations, AJAX, jQuery UI widgets
Review and Q&A:
o Open Q&A session to clarify any remaining concepts
o Showcase of the final project
Advanced Bootstrap Forms & Tables
Advanced Forms and Validation
o Form validation using Bootstrap
o Custom form controls (custom checkboxes, radio buttons,
switches, file inputs)
o Inline forms and input groups
Tables in Bootstrap
o Creating responsive and styled tables
o Using Bootstrap's table classes
o Customizing tables
o Table utilities (striped rows, bordered tables, hover effects)
Integrating JavaScript Plugins & Best Practices
JavaScript Components Overview
o Using Bootstrap's JavaScript components (tooltips, modals,
carousel)
Integrating jQuery JS plugins with jQuery or vanilla
JavaScript
Working with Events
o Creating and using toast notifications for alerts
o Handling user interaction
Best Practices in Bootstrap
o Following the 12-factor principles
o Accessibility in Bootstrap
o Optimizing performance (minimizing unused CSS, lazy-
loading)
Project Work
Q&A Session
Hands-on project: Creating a responsive web application
o Using advanced Bootstrap (includes navigation, forms,
modals, etc.)
Addressing participant queries
Providing resources for further learning
React
Introduction to React
Overview of JavaScript ES6+ features (arrow functions,
destructuring, spread/rest operators)
What is React?
The history and purpose of React
SPA (Single Page Applications) overview
Setting up the environment
o Node.js, npm, and create-react-app
Understanding components and JSX
o Functional vs. Class components
o Introduction to JSX syntax
First simple app: Hello World in React
React Basics and State Management
Props and State
o Passing data using props
o Managing state with useState (functional components)
Event handling in React
o Handling events like clicks, input changes, etc.
Introduction to component lifecycle
o Using lifecycle methods with class components vs. useEffect
hook in functional components
Building a simple interactive form
Component Communication and Lists
Component hierarchy and parent-child communication
Passing functions and data between components
Rendering lists
o Using map() to dynamically generate lists
o Keys in React and their importance
Conditional rendering
o Ternary operators and logical AND for conditional UI
Handling Forms and Basic Hooks
Forms in React
o Controlled components and form handling
o Handling form submissions & validation
Introduction to hooks:
o useState
o useEffect
Deep dive into useEffect for side effects and cleanup
Routing and Advanced Component Patterns
React Router
o Setting up routing with react-router-dom
o Dynamic routing and URL parameters
o Nested routes
Higher Order Components (HOCs) and Render Props pattern
o Understanding HOCs and their usage
Advanced Hooks and Context API
Advanced hooks
o useReducer for complex state logic
o useMemo and useCallback for optimization
o useRef for accessing DOM elements and maintaining mutable
values
Context API
o Using Context for global state management
o Avoiding prop drilling with Context
Styling in React
CSS in JS and Styled Components
o Introduction to Styled Components
o Basic usage and theme integration
Using traditional CSS/SCSS with React
CSS Modules for local component styling
State Management with Redux
Introduction to Redux
o Core concepts: store, actions, reducers
o Setting up Redux in a React app
o Connecting components to Redux state with useSelector and
useDispatch
Middleware in Redux
o Using Redux Thunk for async actions
Introduction to Redux Toolkit
Advanced Concepts, Testing, and Deployment
Code-splitting and lazy loading
o Optimizing performance with dynamic imports
o React Suspense and lazy()
Testing in React
o Writing unit tests for components with Jest
o Testing with React Testing Library
Deploying a React app
o Preparing your app for production
o Deploying to platforms like Netlify, Vercel, or GitHub Pages
Final Project and Review
Throughout the training, participants can build a final project that
incorporates most of the concepts learned (e.g., a real-world React
app).
Wrap-up and Q&A session to review the most important topics and
clarify any doubts.
REACT JS
1. What is Full Stack Development?
o Overview of Full Stack Development
o Introduction to Software Development Life Cycle (SDLC)
o Understanding Request and Response in Web Applications
2. Introduction to Programming Paradigms
o Procedure-Oriented Programming (POP) vs. Object-Oriented
Programming (OOP)
o What is Object-Oriented Programming?
o Benefits of OOP in Java
3. Java Architecture
o Java Development Kit (JDK), Java Runtime Environment (JRE),
Java Virtual Machine (JVM)
o Introduction to IDE (Eclipse Installation & Setup)
4. Keywords, Variables & Data Types
o Variables and Data Types (Primitive & Non-Primitive)
o Writing a Simple "Hello World" Program
o Arithmetic Program, Variable Declaration Program
5. Java Operators and Control Structures
o Arithmetic, Logical, Comparison & Conditional Operators
o Introduction to Control Structures: Conditional Statements (if,
else if)
o Hands-on: Simple if-else and operator-based programs
6. Advanced Conditional Statements
o elseif ladder, Nested if & switch case statements
o Hands-on: Writing programs for various conditional structures
7. Introduction to Loops
o Loops in Java: while, do-while & for loop
o Programs with Nested Loops
8. Pattern Programming with Loops
o Working on basic to advanced pattern programs using loops
9. Introduction to Arrays
o Array Declaration and Initialization
o Array Operations: Insertion, Addition of Array Elements,
Searching
10. Advanced Array Manipulation
o Programs: Comparison of two arrays, Merging Arrays, Sorting
Arrays
o Segregating Positive and Negative Numbers into Separate
Arrays
11. Introduction to Functions
o What is a Function? Types of Functions (Pre-defined & User-
defined)
o User-defined Functions: Default, Parameterized, With Return
Value
12. Object-Oriented Programming Basics
o Understanding Classes and Objects
o The Four Pillars of OOP (Theory): Encapsulation, Inheritance,
Polymorphism, Abstraction
13. Constructors & Encapsulation
o Constructors: Default, Parameterized, and Copy Constructors
o Encapsulation using Getters and Setters, Practical Programs
14. Inheritance
o What is Inheritance? Types of Inheritance
o Practical Programs on Inheritance: Single, Multilevel,
Hierarchical
15. Static Members & Inner Classes
o Static Variables, Static Methods, Static Block
o Inner Classes: Static & Non-static inner Classes
16. Introduction to String & Math Classes
o String Class and Its Functionalities
o Understanding the Concept of Immutability of Strings
17. String Handling Programs
o String Operations: Concatenation, Substring, String
Comparison
o Introduction to Math Class Functions
18. Polymorphism
o Method Overloading and Method Overriding
o Use of the super Keyword
19. Abstraction and Interfaces
o What is Abstraction?
o Achieving Abstraction in Java
o Working with Interfaces & Abstract Classes
20. Final Keyword & Object Cloning
o Use of final with Variables, Methods, Classes
o Shallow Copy vs. Deep Copy, Object Cloning
21. Exception Handling Basics
o Built-in and Custom Exceptions
o Try, Catch, Finally Blocks, throw & throws Keywords
22. Advanced Exception Handling
o Checked vs. Unchecked Exceptions
o Creating Custom Exceptions
23. Introduction to Multithreading
o What is a Thread? Creating Threads using Thread Class and
Runnable Interface
o Understanding Main Thread & Thread Lifecycle
24. Multithreading Concepts
o What is Synchronization? Understanding Thread Safety
o Using synchronized keyword for thread-safe operations
o Concept of Inter-Thread Communication using wait, notify(),
notifyAll
o Handling Deadlocks and Race Conditions
o Writing Thread Synchronization Programs
25. Thread Pooling & Advanced Threading
o Java Executor Framework, Thread Pools, Concurrency in Java
26. Introduction to Java I/O
o Understanding Java I/O Streams
o File Handling: Reading and Writing Files using File Streams
27. Byte Stream Classes
o FileInputStream, FileOutputStream, DataInputStream,
DataOutputStream
o ObjectInputStream & ObjectOutputStream
28. Character Stream Classes
o FileReader, FileWriter, BufferedReader, BufferedWriter
29. Serialization & Deserialization
o Working with Serializable Objects
o Programs: Serialization and Deserialization of Java Objects
30. File Operations & NIO (New I/O)
o File System operations
o Creating, Deleting, and Modifying Files
o Introduction to Java NIO (Buffer, Channels, Selectors)
31. Introduction to Collections Framework
o Difference between Arrays and Collections
o Collection Interfaces & Classes: List, Set, Map
32. Working with Lists
o ArrayList, LinkedList, Vector, Stack
o Programs on List Manipulation
33. Working with Sets
o HashSet, LinkedHashSet, TreeSet
o Hands-on: Adding, Removing & Searching Elements in Sets
34. Working with Maps
o HashMap, LinkedHashMap, TreeMap
o Programs: Iterating Over Maps, Sorting and Searching in Maps
35. Queue and Deque
o Introduction to Queue and Deque Interfaces
o PriorityQueue, ArrayDeque, Practical Applications
36. Introduction to Project Development
o Planning a Java Application
o Tools and Technologies for Java Projects
37. Building a Mini Project (Part 1)
o Designing the Project Structure
o Setting Up the Development Environment
38. Building a Mini Project (Part 2)
o Implementing Business Logic Using Java OOP Concepts
o Collections, Threads & File I/O Integration
39. Project Finalization
o Testing, Debugging, and Exception Handling
o Best Practices for Code Optimization
40. Advanced Java Concepts
o Java Coding Best Practices
o Design Patterns for Software Development
o Clean Code and Refactoring Techniques
ADVANCE JAVA
1. Introduction to Web Applications & Servlet Basics
o What is a Web Application?
Overview of Web Applications (client-server model,
HTTP, Web Servers)
Difference between Web Applications and Desktop
Applications
o What is a Servlet?
Introduction to Servlets: Basics & Importance
Working with Web Servers (Apache Tomcat, Jetty, etc.)
o Basic Servlet Program
Writing a simple servlet to handle HTTP requests and
responses
Using HttpServlet for GET and POST requests
o Hands-on Exercise: First Servlet Program
2. Working with HTML Form Data in Servlets
o Get Data from HTML in Servlet
Using getParameter() to fetch form input data
Parsing numerical data (parseInt(), parseDouble())
o Using PrintWriter for Response
Sending HTML response using PrintWriter
Formatting responses with HTML
o Example Program: Create a form to collect user details and
display them
o Hands-on Exercise: Implement form data collection and
display it
3. Introduction to JSP (JavaServer Pages)
o What is JSP?
o Introduction to JSP: Difference between JSP and Servlets
o Basic structure of a JSP page
o Tags in JSP
Implicit objects, directives, and declarations
Standard tags: <% page %>, <%@ include
%>, <%@ taglib %>
o Hands-on Exercise: Write a basic JSP page to display "Hello,
World!"
4. More JSTL and Functions in JSP
o Function Tags in JSTL
<fn:length>, <fn:join>, <fn:replace>
Using JSTL to Simplify Code
Best practices for using JSTL in web applications
o Hands-on Exercise: Create a complex JSP page using JSTL tags
5. JDBC - Connection Pooling
o Connection Pooling in JDBC
Why connection pooling is important
Using libraries like Apache DBCP or C3PO for connection
pooling
o Database Connection Management
Managing database connections efficiently in a multi-
user environment
o Hands-on Exercise: Set up a connection pool & connect to a
database
6. Servlet HTTP Methods - GET and POST
o Understanding HTTP Methods
Difference between GET & POST requests
When to use GET vs POST
o Handling GET and POST in Servlets
Using doGet() and doPost() methods
Reading request parameters in servlets
Using getParameter() to fetch form data
o Example Program: Handling form data in a servlet
o Hands-on Exercise: Create a form and process it using a
servlet
7. Advanced Servlet Programs
o Extra Programs on Servlets
Handling different types of form inputs (checkboxes,
radio buttons, etc.)
Using cookies & sessions for persistent data
o RequestDispatcher
Using RequestDispatcher for internal redirects and
forwarding
Forwarding request & response to other resources (JSP,
another servlet)
o Hands-on Exercise: Create a servlet that forwards data to
another page
8. JSP Control Structures and Functions
o Using Control Structures in JSP
if, else, for, while in JSP
Conditional logic and Iteration
o Using Functions in JSP
Simple functions & calling them from JSP
o Hands-on Exercise: Create a JSP page with loops and
conditions
9. Introduction to JSTL (JavaServer Pages Standard Tag Library)
o What is JSTL?
o Overview of JSTL: Core Tags, Formatting Tags, and Function
Tags
o Benefits of using JSTL over scriptlets
10. JDBC - Advanced Operations
o PreparedStatement
Using PreparedStatement for parameterized queries
Advantages of PreparedStatement over Statement
o Transactions in JDBC
Handling transactions and committing/rolling back
o Hands-on Exercise: Implement a program that updates and
deletes records using JDBC
11. Integrating Servlets, JSP & JDBC
o Connecting Servlets with JDBC
Servlet interacting with database using JDBC
Displaying data dynamically from the database in a JSP
page
o Form Validation and Data Persistence
Validating user inputs before inserting them into the
database
o Hands-on Exercise: Create a complete web application using
Servlets, JSP, and JDBC for CRUD operations
12. Servlet Lifecycle
o Servlet Lifecycle Overview
The lifecycle of a servlet: init(), service(), destroy()
How servlets are initialized, processed, and destroyed
o Detailed Exploration of Lifecycle Methods
init(): Initialization of servlet
service(): Handling requests
destroy(): Cleanup before servlet destruction
o Basic Programs
Implement lifecycle methods in a servlet program
Logging lifecycle events for debugging
o Hands-on Exercise: Create a servlet demonstrating the
lifecycle
13. Session Management in Servlets
o Session Management
Introduction to Sessions and how they work
Using HttpSession to maintain session data
o Cookies
Introduction to Cookies in servlets
Creating, reading, and deleting cookies
o Hands-on Exercise: Implement session management and
cookies in servlets
o Core Tags in JSTL
<c:forEach>, <c:if>, <c:choose>,
<c:out>
o Formatting Tags in JSTL
<fmt:formatDate>, <fmt:formatNumber>
o Hands-on Exercise: Using JSTL tags for iteration and
conditionals in JSP
14. JDBC - Java Database Connectivity
o Introduction to JDBC
Overview of JDBC & its components (Connection,
Statement, ResultSet)
Steps for connecting to a database
o Inserting Data using JDBC
o JDBC CRUD operations: Create, Read, Update, Delete
o Hands-on Exercise: Create a program that connects to a
database and inserts data
15. Final Project and Best Practices
o Final Project
Building a fully functional web application combining
Servlets, JSP, JSTL, and JDBC
o Best Practices in Java Web Development
Code organization, security practices, performance
considerations
Common mistakes & how to avoid them
o Project Presentation: Students present their final projects
SPRING
1. Introduction to Frameworks and Spring Framework
o What are Frameworks in Java?
o Benefits and Importance of Frameworks in Java
o Introduction to Spring Framework
o Key Features of Spring
o Components of the Spring Framework
o Setting up a Simple Spring Project (using Spring Boot)
o Basic Spring Boot Application
2. Dependency Injection in Spring
o What is Dependency Injection (DI)?
o Constructor-based Dependency Injection
o Setter-based Dependency Injection
o Autowiring in Spring
o ByName, ByType, and ByConstructor Autowiring
o Practical examples of DI in Spring
3. Spring Bean Lifecycle and Stereotype Annotations
o Overview of Spring Bean Lifecycle (Instantiation, Initialization,
Destruction)
o Using @PostConstruct and @PreDestroy
o Stereotype Annotations in Spring (@Component, @Service,
@Repository, @Controller)
o Practical example of Bean Lifecycle with custom methods
4. Introduction to Spring MVC
o What is Spring MVC and its role in web applications?
o Core components of Spring MVC (DispatcherServlet,
Controllers, Views)
o Simple Spring MVC Example: Controller and View
o Overview of Spring MVC architecture and request handling
o Practical example: Simple Spring MVC application with one
controller
5. Handling Multiple Views and Controllers in Spring MVC
o Handling Multiple Views in Spring MVC
o Working with Multiple Controllers
o Form Handling in Spring MVC
o Adding Two Numbers using a form
o Using @ModelAttribute to bind form data
o Practical example: Form submission and processing in Spring
MVC
6. CRUD Operations in Spring MVC
o Overview of CRUD Operations in Spring MVC
o Creating a CRUD Application with Spring MVC
o Controller, Service, Repository layer
o Implementing CRUD operations on a simple entity (e.g.,
Employee)
o Practical example: Implementing Create, Read, Update, and
Delete in a Spring MVC application
7. Advanced Spring MVC Features
o JSP vs Thymeleaf in Spring MVC
o Validating Forms with @Valid and BindingResult
o File Upload Handling in Spring MVC
o Implementing Advanced Form Handling in Spring MVC
o Practical example: Form validation and file upload in Spring
MVC
8. Spring MVC Final Project and Review
o Building a Full CRUD Application with Spring MVC
o Multiple Views, Controllers, and Form Handling
o Deploying the Spring MVC Application to a web server (e.g.,
Tomcat)
o Best Practices for Spring MVC Applications
o Project Demonstration and Review
o Recap of all concepts learned during the training
SPRING-BOOT
1. Introduction to Spring Boot & Setup
o What is Spring Boot?
o Use of Spring Boot
o Installing Spring Tool Suite (STS)
o First Spring Boot Program
o Setting up a simple Spring Boot application
o Testing with Postman
2. Spring Boot Core Features
o Spring Boot Configuration (application.properties /
application.yml)
o Spring Boot Profiles (dev, prod, test)
o Spring Boot Starters
o Spring Boot Actuator (health check, metrics)
o Building a Simple RESTful Web Service
3. Spring Boot Auto Configuration and Dependency Injection
o Spring Boot Auto Configuration
o Dependency Injection in Spring Boot (Constructor, Setter-
based)
o Bean Scopes (Singleton, Prototype, Request, Session)
o Autowiring in Spring Boot
o Creating a Service and Injecting into a Controller
4. Spring Data JPA & CRUD Operations
o Introduction to JPA (Java Persistence API)
o Setting up Database (H2, MySQL)
o Performing CRUD Operations using Spring Data JPA
o Repository interface (JpaRepository)
o Creating and Testing CRUD Application
5. Spring Boot Security
o Introduction to Spring Security
o Basic Authentication in Spring Boot
o Role-based Access Control
o JWT Authentication (JSON Web Tokens)
o Securing REST APIs
6. Spring Boot MVC – Building Web Applications
o Introduction to Spring MVC (Model-View-Controller)
o Setting up Controllers and Views
o Handling Form Submissions
o Multiple Views and Controllers
o Thymeleaf / JSP for View Rendering
7. Advanced Spring Boot Features
o Spring Boot Batch Processing
o Asynchronous Processing (@Async)
o Event Handling in Spring Boot
o Spring Boot Actuator for Application Monitoring
o Custom Management Endpoints
8. Spring Boot Testing
o Unit Testing with Spring Boot (@SpringBootTest)
o Mocking Beans (@MockBean, Mockito)
o Integration Testing with @DataJpaTest and @WebMvcTest
o Automating Tests with Postman / RestAssured
9. Building and Deploying a Spring Boot Application
o Building a Full-Stack Spring Boot Application (Frontend –
Backend)
o Packaging Spring Boot Application (JAR/WAR)
o Deploying to Cloud (Heroku, AWS)
o Course Recap and Q&A.
HIBERNATE
1. Introduction to Hibernate & Setup
What is Hibernate?
Use of Hibernate
First Hibernate Program: Setting up Hibernate application
Hibernate Session, SessionFactory, and Transaction
2. Entity Mapping & Basic CRUD Operations
Entity Mapping: @Entity, @Table, @Id, @GeneratedValue, @Column
Basic CRUD Operations: save(), get(), update(), delete()
3. Aggregate Functions in Hibernate
Introduction to HQL (Hibernate Query Language)
Using Aggregate Functions: COUNT(), AVG(), SUM(), MAX(), MIN()
Writing HQL queries with aggregate functions
4. Relationship Mappings in Hibernate
Introduction to Relationship Mappings
One-to-One Mapping: Using @OneToOne
Fetching and saving related entities
5. One-to-Many and Many To-Many Mappings
One-to-Many Mapping: Using @OneToMany and @ManyToOne
Many-to-Many Mapping: Using @ManyToMany
Cascade operations in relationships
6. Advanced CRUD Operations
Advanced Session Management: Open, Close, Flush, Clear
Managing Transactions with @Transactional
Querying with Hibernate: Using HQL and Criteria API
Update and Delete Operations: saveOrUpdate(), merge(), delete()
7. Hibernate Caching & Performance Optimization
First-Level Cache: Session cache behavior and persistence
Second-Level Cache: Configuration and providers (EhCache)
Query Cache for performance optimization
8. Hibernate with Spring Integration & Advanced Topics
Spring and Hibernate Integration: SessionFactory, Hibernate
Template
Handling Complex Data with Hibernate: Custom types and enums
Optimistic and Pessimistic Locking in Hibernate
Using JPA with Hibernate: Spring Data JPA and repositories
ESSENTIAL JAVA TOOLS
1. IDEs (Integrated Development Environments)
o Eclipse: Popular open-source IDE with plugins for Java
development.
o IntelliJ IDEA: A powerful, feature-rich IDE with smart coding
assistance.
o NetBeans: Another open-source IDE that supports Java and
web applications.
2. Build Tools
o Maven: Manages dependencies, builds projects, and
automates tasks.
o Gradle: Advanced build automation tool, often used with
Android development.
o Ant: Older build tool, still used for some legacy projects.
3. Version Control Systems
o Git: Distributed version control system, widely used in
software development.
o Apache Subversion (SVN): Centralized version control
system used in older projects.
4. Testing Frameworks and Tools
o JUnit: A widely used framework for unit testing in Java.
o TestNG: More powerful than JUnit, especially for complex
testing needs.
o Mockito: For creating mock objects in unit tests.
o Selenium: Tool for automating web application testing.
o Appium: Used for automating mobile application testing.
5. Code Quality and Static Analysis Tools
o SonarQube: A tool for inspecting the code quality.
o PMD: Analyzes code for programming flaws.
o Checkstyle: Helps ensure code adheres to Java coding
standards.
o FindBugs: Detects potential bugs in Java code.
6. Java Profiling Tools
o VisualVM: Provides detailed insights into application
performance.
o JProfiler: Powerful profiler for CPU, memory, and thread
profiling.
o YourKit: Another popular profiler with powerful analytics.
7. Logging Tools
o Log4j: A logging library commonly used in Java applications.
o SLF4J: Acts as an abstraction layer for various logging
frameworks.
o Logback: A robust logging framework, often used with SLF4J.
8. Dependency Injection Frameworks
o Spring Framework: Provides dependency injection along
with a variety of enterprise solutions.
o Guice: A lightweight DI framework from Google.
9. Database Management and ORM Tools
o Hibernate: An ORM framework that simplifies database
interactions.
o JPA (Java Persistence API): A standard API for ORM in Java.
o MyBatis: Lightweight framework for SQL-based data access.
o H2 Database: Lightweight, in-memory database for testing.
10. Build Automation and CI/CD Tools
o Jenkins: Continuous integration and delivery tool.
o Travis CI: CI service integrated with GitHub for testing and
deploying projects.
o CircleCI: Popular CI/CD tool for building, testing, and
deploying code.
11. Application Servers
o Apache Tomcat: A lightweight servlet container for Java
applications.
o WildFly (formerly JBoss AS): Open-source application
server for Java EE.
o GlassFish: An open-source application server for Java EE
applications.
12. Containerization and Cloud Tools
o Docker: Containerization tool for packaging applications and
dependencies.
o Kubernetes: For managing containerized applications at
scale.
o AWS, Google Cloud Platform (GCP), Azure: Popular cloud
platforms with Java support.
13. Package and Dependency Managers
o Apache Ivy: Dependency manager integrated with Ant.
o Maven Central Repository: Repository for Java libraries and
dependencies.
14. APIs and Libraries
o Jackson: For JSON processing in Java.
o Apache POI: For reading and writing Microsoft Office
documents.
o Gson: A library from Google for converting Java objects to
JSON.
15. Monitoring and Debugging Tools
o New Relic: For application monitoring and performance
tracking.
o Dynatrace: Tool for application performance management.
o Splunk: For analyzing and monitoring machine-generated
data.
DATABASE DATABASE DATABASE
1. Introduction
o Definition and importance of databases.
o Overview of SQL (Structured Query Language)
2. Database Fundamentals
o Explanation of databases as structured data repositories
o Types and applications of databases (relational, NoSQL, etc.)
o Role of databases in various industries.
3. Installation of MySQL
o Steps to install MySQL
o Configuring database server settings
o Command-line and graphical tools for MySQL
4. Categories of SQL Statements
o Data Definition Language (DDL): CREATE, ALTER, DROP,
RENAME, TRUNCATE
o Data Manipulation Language (DML): INSERT, UPDATE, DELETE
o Data Query Language (DQL): SELECT
5. Basic SQL Syntax
o Writing simple queries
o Using WHERE to filter data
o Logical operators (AND, OR, NOT)
o LIKE operator and wildcard characters
o IN and BETWEEN operators
6. SQL Functions
o String functions: CONCAT, SUBSTRING, UPPER, LOWER
o Date and time functions: NOW, DATE_FORMAT, CURDATE
o Numeric functions: ROUND, ABS
7. Aggregate Functions
o COUNT, SUM, AVG, MIN, MAX
o Grouping and Aggregating Data
o GROUP BY and HAVING clause
o Understanding Relationships
o Primary keys and foreign keys
8. Types of Joins
o INNER JOIN
o LEFT (OUTER) JOIN
o RIGHT (OUTER) JOIN
o FULL (OUTER) JOIN
o Subqueries
o Single-row and multi-row subqueries
o Correlated subqueries
9. Advanced Operators
o EXISTS, ANY, and ALL operators
o Views
o Creating & managing views
10. Indexes
o Types of indexes & their benefits
o Strategies for using indexes effectively
o Transactions
o ACID properties
o Using BEGIN TRANSACTION, COMMIT, and ROLLBACK
o Query Optimization
o Analyzing execution plans
o Tips for writing efficient queries
11. Indexing Strategies
o When and how to use indexes for performance improvement
o Best Practices
o Avoiding common pitfalls in SQL queries
o Capstone Project
o End-to-end project: Designing a database, writing queries, and
optimizing performance.
12. Advanced Topics
o Data security in SQL
o Introduction to SQL in the Cloud (AWS RDS, Azure SQL, Google
Cloud SQL)
o SQL and Big Data (Intro to NoSQL concepts)
o Wrap Up
o Review of key concepts
o Q&A and career guidance.