Java Full Stack Overview
The Java Full Stack Course offers comprehensive training in both front-end and back-end development using Java as the core programming language. This course covers essential technologies such as HTML, CSS, JavaScript, Angular, and React for front-end development, alongside back-end technologies like Java, Spring Boot, Hibernate, and RESTful services.
Students will also learn database management using MySQL or MongoDB and how to deploy applications in cloud environments. Designed for beginners and professionals alike, this course provides hands-on experience in building dynamic web applications, enabling participants to become proficient full-stack developers.
In addition to the core technologies, the Java Full Stack Course emphasizes best practices in software development, including version control with Git, agile methodologies, and unit testing. Students will work on real-world projects that simulate industry scenarios, allowing them to apply their knowledge in a practical setting.
By the end of the course, participants will have a solid understanding of how to integrate front-end and back-end systems seamlessly, ensuring smooth data flow and user interaction. This course is ideal for those aiming to build a career as a full-stack developer, with a strong focus on Java-based applications.
Moreover, the Java Full Stack Course includes guidance on industry best practices such as security measures, performance optimization, and scalable architecture design. Participants will gain insights into contemporary tools and frameworks that enhance productivity and code quality.
Networking opportunities with industry professionals and access to career support services further enhance the learning experience, preparing students for various roles in the technology sector. Upon completion, graduates will possess a robust skill set and practical experience to tackle complex development challenges, making them highly competitive in the job market.
Java Full Stack Curriculum
- Introduction HTML
- HTML Basics
- HTML Elements
- HTML5 Semantic
- HTML Attributes
- HTML Headings
- HTML Paragraph
- HTML Styles
- HTML Formatting
- HTML Computer Code
- HTML Comments & Colours
- HTML CSS, Links and Images
- HTML Lists
- HTML Blocks
- HTML Layout
- HTML Responsive
- HTML JavaScript
- HTML Head
- Introduction CSS3
- CSS3 Syntax
- CSS3 Colours
- CSS3 Backgrounds
- CSS3 Borders
- CSS Padding
- CSS Height/Width
- CSS3 Gradients
- CSS3 Shadows
- CSS3 Text
- CSS3 Fonts
- CSS3 2D Transforms
- CSS3 3D Transforms
- CSS Box Model
- CSS Display
- CSS Position
- CSS Align
- CSS Pseudo-class
- CSS Pseudo-element
- CSS Navigation Bar
- CSS Dropdowns
- CSS3 Images
- CSS Attr Selectors
- CSS Forms
- CSS Counters
- CSS3 Animations
- CSS3 Buttons
- CSS3 Multiple Columns
- CSS3 Filters
- CSS3 Media Queries
- CSS3 Responsive
- Introduction to Bootstrap
- Bootstrap Basics
- Bootstrap Grids
- Bootstrap CSS
- Typography
- Tables
- Forms
- Buttons
- Corousel
- Modal
- Tooltip
- History of JavaScript
- Advantages
- Limitations
- Script element
- Creating your first JavaScript
- program
- Coding convention
- Setting up development environment (with VSCode)
Types and Statements
- Keywords in JavaScript
- Overview of Data types
- Primitive Data types
- Non-primitive Data types
- Conditional statements
- Loops
Operators
- Introduction to operators
- Operator precedence and associativity
- Deep dive into operators
- Arithmetic
- Comparison
- Ternary
- Logical
- Language
- Bitwise
Functions - Level I
- Introduction to functions
- Function definition
- Passing values
- Returning values
- Local and global variables
- Functions as objects
- Function constructor
Functions - Level II
- Function invocation patterns
- Arrow functions
- JavaScript scopes
- Function closures
Arrays and Strings
- Introduction to Arrays
- Array declaration
- Array access methods
- Multi-dimensional arrays
- String properties
- String access methods
Event handling
- JavaScript events
- Event handler
- Event flow
- Event bubbling and capturing
- Event types
Document Object Model (DOM)
- Introduction to DOM
- Types of DOM
- DOM standards and methods
- Manipulating documents using DOM
- Handling images
- Table manipulation
- Animation
- Node and Node-list handling
Form Handling
- Introduction to forms
- Form processing
- Forms object
- Accessing data from forms
- Form validation
- Additional features in forms
- Validation APIs
Debugging Techniques
- JavaScript Errors
- Error handling mechanisms
- Introduction to jQuery
- Query Syntax
- Query Selectors
- Query Events
- Query Effects
- Query HTML
- Query Traversing
- jQuery AJAX & Misc
- Introduction to React
- History of React
- Key Benefits of React
- React development environment
- Creating your first React Application
- React Source code structure
JSX
- Introduction to JSX
- Coding in JSX
- Expressions in JSX
- Working with HTML
- Conditional Constructs
Component
- Introduction to components
- Why Components?
- Writing JSX code in components
- Adding CSS
- Populating Data Dynamically Passing data through "props"
- Multiple Components
State and Event Binding
- Introduction to Events
- Event Handlers
- Working with state
- Data Binding
- Controlled and Uncontrolled
- Components
Rendering Lists and Conditional Contents
- Rendering lists of data
- Using stateful list
- Keys in data
- Conditional Contents
- Adding dynamic styles
Debugging Techniques
- Understanding error message
- Code flow and warnings
- Breakpoints
- Using React Dev Tools
HTTP
- Introduction to HTTP
- Methods in HTTP
- Response code in HTTP
- Introduction to REST interfaces
- Characteristics of REST
- Introduction to JSON
- JSON data representation
- GET request
- Using async and await
- Handling Http errors useEffectsO
- POST request
Custom React Hooks
- What are custom hooks?
- Creating and using custom hooks
- Custom HTTP hooks
Forms
- Introduction to Forms
- Working with user input submission
- Adding validation
- Working with custom hooks
Authentication
- What is authentication?
- Why and How?
- Authentication tokens
- Setting up
- Adding signup
- Showing feedback to the user
- Adding User login
- Using tokens
- Redirecting the user
- Adding logout
- Protecting frontend pages
- Persisting User authentication status
- Adding auto logout
Deployment
- Introduction
- Deployment steps
- Adding lazy loading
- Building the code for production
- Getting started with deployment
- Handling routes and finishing deployment
Introduction To Java
- Why Java was Developed
- Application Areas of Java
- History of Java
- Platform Independency in Java
- USP of Java: Java Features
- Sun-Oracle Deal
- •Different Java Platforms
- Difference between JDK,JRE,JVM
- Java Versions
- JVM Architecture
- Installing Java on Windows
- Understanding Path Variable: Why Set
- Path
- Installing Eclipse
- Installing Netbeans
Creating First Java Program
- Understanding Text Editors to Write
- Programs
- How to compile java file
- Byte Code and class file
- How to run class file
Java Language Fundamentals
- Identifiers
- Keywords
- Variables
Authentication
- What is authentication?
- Why and How?
- Authentication tokens
- Setting up
- Adding signup
- Showing feedback to the user
- Adding User login
- Using tokens
- Redirecting the user
- Adding logout
- Protecting frontend pages
- Persisting User authentication status
- Adding auto logout
Deployment
- Introduction
- Deployment steps
- Adding lazy loading
- Building the code for production
- Getting started with deployment
- Handling routes and finishing
- deployment.
- Literals
- Data Types
- Operators
- Comments
- Condition Statements
- Looping Statements
- Type Casting
OOP Implementation
- Why OOP
- 00P Concepts with Real life examples
- Class& it's Syntax
- Object& it's Syntax
- Reference Variable
- Constructors
- Instance (Non-Static) & Static
- Variables
- Instance (Non-Static) & Static
- Methods this Keyword and it's usages
- Object & Static Initializers
- (Anonymous
- Blocks)
- inheritance & its Syntax
- Types of Inheritance
- Object Class as Root of Java Class
- Hierarchy
- Variable Hiding
- Method Hiding
- Method Overriding
- Method Overloading
- Super keyword and its usages
- Final keyword and its usages
- Constructor Chaining
- Upcasting and Downcasting
- Static & Dynamic Binding
- Runtime Polymorphism
- Abstract Keyword (Abstract classes
- and methods)
- Understanding Interfaces
- Implementation of Encapsulation
- Association with Implementation
Packages
- Understanding Packages
- Setting Classpath
- Reading Input from Keyboard
- Access Modifiers
- With in Package & Outside Package
- Implements
Nested Types
- Static Nested Class Non-static Nested
- Class
- Local ClassAnonymous ClassNested
- Interface
Arrays
- General Definition of Array
- Advantagesfrom Array
- Arrays in Java
- 1-d Arrays
- 2-d Arrays
- Jagged Arrays
- Array of reference type
- Operations on Arrays
- User Define Array & Object Type
Command Line Arguments And Wrapperclasses
- Wrapper Classes
- Parsing of Numeric Strings
- String representation of Primitives
Exception Handling
- Types of Runtime Errors
- Understanding Exceptions
- Exception Class Hierarchy
- Try & Catch Blocks
- Patterns of Catch Block
- Nested Try statements
- Throw, throws and Finally
- Creating Custom Exceptions
- Checked & Unchecked Exceptions
- Assertion
Working With Strings
- What is String
- String Class
- Creating String Object
- Operations on String
- String Buffer Class and it's
- MethodsDifference between String and StringBuffer class
- StringBuilder Class and its Methods
- Difference between StringBuffer andStringBuilder
Swing
- Introduction to AWT
- Introduction to Swing
- ComponentsLook And Feel of Swing
- Components
- MVC Architecture of Swing Components
- Working with Image
- Advance Swing Components
- JOptionPane, JTree, JTable, JTabbedPaneJFileChooser, JcolorChooser
- Menu Components
- JMenu
- JMenuitem
- JMenubar
Multithreaded Programming
- Multitasking: Why Concurrent Execution
- Multiprocessing v/s Multithreading
- Main Thread (Default Java Thread)
- Creating Child Threads and understanding context switching
- Thread States
- Thread Group
- Thread Synchronisations: Methods and Blocks
- Inter-Thread communication
- Daemon Threads
- Deadlock
I/O Streams
- What is I/O
- Why Need Streams
- Byte Streams and Character Streams
- Read/Write operations with File
- Scanner Class
- Object Serialization & Deserialization
- Transient keyword
- File Class and it's Methods
Reflection
- Understanding the Need Of Reflection
- Getting information about class's modifiers, fields, methods, constructors and superclasses Finding out constant and method declaration belong to an interface
- Creating an instance of the class whose name is not known until runtime
- Getting and setting values of an object's field if field name is unknown until runtime
- Invoking Private Methods
- Invoking a method on an object if the method is unknown until runtime
Extended & Utility Concepts
- Generics
- Lambda Expression
- Annotations
- Object Cloning
- Vargs
- Static-import
- Enum
- Static, Default, and Private Methods of Interface
- Var Type
- Java Modules
- Stream API
Collections Framework
- What is Collection?
- What is Framework?
- Collections Framework
- Core Interfaces
- Collection, List, Queue, Deque
- Set, NavigableSet, SortedSet Map,
- NavigableMap, SortedMap
- Core Classes
- ArrayList, LinkedList, Priority Queue, ArrayDeque
- HashSet, LinkedHasSet, TreeSet,
- HashMap, IdentityHashMap, WeakHash-
- Map, LinkedHashMap, TreeMap
- Accessing a Collection via an Iterator
- Accessing List via ListIterator
- Accessing a Collection via for each loop
- Working with User Defined Objects
- The Comparator and Comparable
- Interfaces
- The Legacy classes and Interfaces.
- Enumeration, Vector, Stack
- Hashtable, Properties
System Properties & Internationalisation(118n)
- Understanding Locale
- Resource Bundle
- Usage of properties File
- Fetching text from Resource Bundle
- Displaying the text in HINDI
Programming Using Jdbc
- Need Of JDBC
- JDBC Drivers
- Statement, Prepared Statement, Callable Statement
- Scrollable and Updatable ResultSet
- Batch Updates
- Transaction
- Metadata
- Connection Database
- Oracle
- My SQL
- Understanding the Concept of Java EE:JEE Specification
- Java EE Architecture
- Single Tier
- Two Tier
- Three Tier
- N-Tier
- Java EE Components
- Web Components
- Distributed (Business) Components
- Java EE Containers & Servers
- Web Container & Web Server
- Apache Tomcat
- EJB Container & Application Server (Weblogic, Glassfish, Websphere)
- Java EE Services
- JNDI Service
- Java Transaction Service
- JAAS
- JMS
Java Servlet
- Introduction to web programming
- Role of Servlet in web programming
- Servlet Lifecycle
- Servlet with Annotations
- @WebServlet
- @WeblnitParam
- @WebListener
- @WebFilter
- @MultipartConfig
- Request Dispatching
- Parameters & Attributes their differences
- ServletConfig and ServletContext
- File Uploading and Downloading
Session Tracking & State Management
- Cookie
- Url Rewriting
- Hidden Form Field
- Session Object
- Events & Listeners
- Dependency Injection
- Refreshing Servlet
- Filters
Java Server Pages (jsp) & Jstl
- JSP Architecture
- JSP Elements
- JSP Objects
- Understanding JavaBeans
- Custom Tags
- Using tags of JSTL
- Expression Language
Project Classes
- Back End Coding
- DATABASE DESIGNING Connecting forms to database
- Writing Business Logic
- Project Hosting
- DESIGN PATTERN
- Why Design Patterns...?
- Front Controller
- Composite View
- Factory Pattern
- Singleton Pattern
- DAO Pattern
Java Mail API
- Email System and Protocols
- Sending & Receiving Mails
- Handling Attachments
Introduction To Distributed Programming
- RMI
- Web Services
Introduction To Restful Services
- PathParam
- @Path
- @FormParam
- @QueryParam
- @DefaultValue
Spring
- What is Spring?
- Spring modules
- Understanding dependency Injection
- Applying aspect-oriented Programming
Maven Deployment
- Maven Configuration
- Converting Maven to Eclipse
- Various Maven Command
Basic Bean Wiring
- Containing your Bean
- Creating bean
- Injecting into bean properties
Controlling bean creation
- Aspect Oriented Programming
Introduction To Hibernate
- Hibernate Architecture
- Hibernate configuration
- Hibernate's Support for Other
- Technologies Installing Hibernate
- A "Hello World" stand-alone application
Creating Persisting Classes
- Mapping a basic Java Class
- Mapping a Class with Binary Data
- Mapping a Serializable Class
Mapping Inheritance With Java Classes
- Table-Per-class Hierarchy Mapping
- Table-Per-subclass Hierarchy Mapping
- Table-Per-concrete-subclass Hierarchy Mapping
- Persistence interfaces
Working With Collections
- Associations
- Lazy initialization
- Mapping Maps/Sorted Maps
- Mapping Sets/Sorted Sets
- Mapping lists
- Mapping Arrays
- Mapping a Bidirectional Association
Hibernate Caching
- How caching improves performance
- First level cache
- Second level cache
Spring Boot
- Introduction To Spring Boot
- Spring Boot Annotation
- Spring Boot & JDBCTemplate
- Spring Boot & JPA Hibernate
- Spring Boot Rest API
- Spring Boot MVC
- Spring Boot Security