Month 1: Introduction to Java and OOP
- Introduction to Java Programming Language
- Variables, Data Types, and Operators
- Control Flow Statements
Project: Build a simple console-based Java application
- Classes and Objects
- Inheritance and Polymorphism
- Interfaces and Abstract Classes
Project: Implement inheritance and polymorphism in Java
- Exception Handling in Java
- Working with Files and Streams
- Serialization and Deserialization
Project: Develop a Java application with exception handling and file I/O
- Overview of Java Collections Framework
- Lists, Sets, and Maps
- Iterators and Comparators
Project: Use Java collections to manage data in an application
Month 2: Advanced Java Concepts
- Introduction to Threads
- Synchronization and Locks
- Executor Framework
Project: Implement multithreading in a Java application
- Connecting to Databases with JDBC
- Executing SQL Queries
- Transaction Management
Project: Create a database-driven Java application using JDBC
- Introduction to Swing Components
- Event Handling
- Layout Management
Project: Develop a GUI application using Swing
- Overview of Spring Framework
- Dependency Injection and Inversion of Control
- Spring MVC Basics
Project: Implement dependency injection using Spring in a Java application
Month 3: Web Development with Java
- Servlet Life Cycle
- JSP Basics and Scripting Elements
- Session Management
Project: Develop a web application using Servlets and JSP
- Introduction to REST Architecture
- JAX-RS Annotations and Resource Classes
- JSON Processing
Project: Build a RESTful API using JAX-RS in Java
- Introduction to Spring Boot
- Spring Boot Starters and Autoconfiguration
- REST APIs with Spring Boot
Project: Develop a microservice using Spring Boot