JAVA WITH SPRING MASTERY
From Zero to Live Project π
Organized by GRACE (Green University Alumni Association of CSE)
in collaboration with
Gobeshona
Go from fundamentals to a production-ready live project β with recorded + live parallel learning.
Program Duration
- Total Duration: 6 months
- Course Phase: 2 months (structured modules + live)
- Project Phase: 4 months (production-grade builds, reviews, deployment)
All official information will be shared via email after registration.
Demo Class (Free) – Open for all
Ask questions about the Course to Instructors
Date: 27.09.2025 at 09:00 PM (Online)
Registration Link: Click here to register
Introduction
This is not another random tutorial. Youβll learn core concepts with guidance and build a complete, production-grade project β in a flow that feels like an internship.
- Learn step-by-step with mentorship
- Ship a production-grade live project
- Contribute to open source
- Resume-ready experience that HRs notice
Highlights
- Dual track: Weekdays (recorded + assistant support) & Friday (lead instructor live)
- Mapped syllabus: same topic in parallel on weekday & Friday
- Quizzes, tasks, and a capstone-style build
- Verifiable certificate + gifts as rewards
Overall program timeline: 6 months (2 months coursework + 4 months projects).
Prerequisites
- Basic Java, OOP
- Basic DSA
- Familiarity with Git/GitHub (bonus)
- Mindset: commitment to learn, practice & work hard
Fees & Rewards
- General Fee: 12,000 BDT
- Green University Students: 8,000 BDT (flat)
Performance Rewards
- 1st Place β 15% cashback
- 2nd Place β 12% cashback
- 3rd Place β 10% cashback
- 90% Attendance β 5% cashback
Application Fee: 50 BDT (non-refundable)
Seat Limit
9 students per batch (strict). If a selected student canβt attend, the next ranked applicant gets a chance.
Instructors
- Course Instructor: Abu Salek Shaon β Principal Software Engineer, LEADS Corporation Limited
- Assistant Course Instructor: Saifur Rahman Sabir β Software Engineer, Unisoft Systems Ltd
Application & Registration Process
- Application: Apply by paying the Application Fee (50 BDT) and submitting the form.
- Screening: Eligible applicants sit for a test (Java, OOP, DSA, problem-solving).
- Selection: Top 9 applicants qualify for final registration.
- Registration: Final registration is confirmed after course fee payment.
All official information will be shared via email after registration.
Important Dates & Links
Item | Date / Link |
---|---|
Application Link | https://forms.gle/d5hpNMyEk52XRHo8A Application Fee: 50 BDT |
Application Start | 16.09.2025 |
Application Deadline | 10.10.2025 (11:59 PM) |
Join Demo Online Live Class | 27.09.2025 β Meeting link will be provided via email |
Screening Test (Onsite) | TBA |
Orientation (Onsite at GUB) | TBA |
Class/Training Start | TBA |
Course Structure (Weekday β Friday Live)
Weekday Modules (Recorded β Course 1) | Friday Live Topics (Course 2) |
---|---|
1. Getting Started – Master Spring Framework and Spring Boot | Introduction to the Spring IoC Container and Beans |
2. Create Maven Project | Container Overview; Bean Overview |
3. Setup Java Gaming Application | Dependencies; Bean Scopes |
4. Loose Coupling with Java and Spring | Customizing the Nature of a Bean; Bean Definition Inheritance |
5. Playing with Spring Framework | Container Extension Points |
6. Key Questions about Spring | Annotation-based Container Configuration |
7. Using Spring Framework & Review | Classpath Scanning and Managed Components; Using JSR 330 Standard Annotations |
8. Create and Manage Your Java Objects | Java-based Container Configuration |
9. Spring Framework Advanced Features | Environment Abstraction; Registering a LoadTimeWeaver; Additional Capabilities of the ApplicationContext; The BeanFactory API |
10. REST API with Spring Boot and Hibernate | Spring Web MVC; REST Clients |
11. Spring AOP | (Advanced AOP, extension topic) |
12. Gradle with Spring Boot | (Build tooling overview: Maven vs Gradle) |
13. Docker with Spring Boot | (Deployment/DevOps support) |
14. Unit Testing with JUnit | (Testing practices and patterns) |
15. Getting Started with Spring Boot | Annotation-based & Java-based Config in Spring Boot |
16. Learning Maven with Spring Boot | Container Overview; Build Configurations |
17. JPA and Hibernate | Transaction Management; DAO Support; Data Access with JDBC; ORM Integration |
Suggested 8β9 Week Study Plan (Course Phase)
Weekly budget β 10 hours (MonβThu recorded + 2 assistant classes; Friday live session). This plan covers the 2-month Course Phase. The 4-month Project Phase follows with guided sprints and reviews.
Week | MonβThu | Friday | Focus Topic(s) |
---|---|---|---|
1 | Recorded + 2 support classes (1.5h each) | Live Session (~4h) | Spring Basics: IoC, Beans, DI, Scopes |
2 | Recorded + Assistant guidance | Live Class | Bean Config, Annotation, Java Config |
3 | Recorded + Practice | Live Class | Advanced Spring Features + Environment |
4 | Recorded + Support | Live Class | JPA + JDBC + ORM + Transaction Mgmt |
5 | Recorded + Support | Live Class | Spring Boot Fundamentals + Auto Config |
6 | Recorded + Practice | Live Class | REST API Design + Web MVC |
7 | Recorded + Assistant guidance | Live Class | AOP, Testing, Gradle, Docker Intro |
8 | Recorded + Practice | Live Class | Mini Project Integration & Review |
9 | Final Recorded Review + Quizzes | Capstone Live Project | Final Project Completion & Assessment |
Communication: All official information (including demo class link) will be shared via email after registration.
Modules Details
Course 1 (Weekday β Recorded) 17 Modules
1) Getting Started – Master Spring Framework and Spring Boot 5 lectures β’ 6min
- 1.1 Getting Started 3:18
- 1.2 Course Downloads (PDF) 00:10
- 1.3 Resources for Installing Java & IDE 00:16
- 1.4 Installing Java & IDE 02:04
- 1.5 Join Learning Community 00:24
2) Create Maven Project 5 lectures β’ 13min
- 2.1 CODE BACKUP & Step-by-Step Changes 00:16
- 2.2 Step 01 β Need for Java Spring Framework 02:20
- 2.3 Step 02 β Getting Started with Spring 03:05
- 2.4 Step 03 β Create New Spring Project with Maven 04:44
- 2.5 Step 03z β Quick Intro to Spring Initializr & Maven 02:38
3) Setup Java Gaming Application 4 lectures β’ 17min
- 3.1 Step 04-01 β Getting Started with Gaming App 06:29
- 3.2 Step 04-02 β Adding Buttons to Spring Gaming App 02:31
-
3.3 Step 04-03 β Java 10
var
Intro 02:42 - 3.4 Step 05 β Loose vs Tight Coupling 05:06
4) Loose Coupling with Java and Spring 7 lectures β’ 30min
- 4.1 Step 06-01 β Introduce Interfaces to Make App Loosely Coupled 06:28
- 4.2 Step 06-02 β Code Review: Introducing Interface to Spring App 03:49
- 4.3 Step 06-03 β Exercise: Add Pacman Game 02:12
- 4.4 Step 07 β Bring in Spring to Make App Loosely Coupled 02:57
- 4.5 Step 08-01 β Launch Spring Java Configuration 06:43
- 4.6 Step 08-02 β Your First Spring Bean 06:07
- 4.7 Step 08-03 β Code Review: Spring Config & Bean 01:52
5) Playing with Spring Framework 4 lectures β’ 21min
- 5.1 Step 09 β Create More Beans in Java Config 06:41
- 5.2 Step 10-01 β Implement Autowiring (Java Config) 03:23
- 5.3 Step 10-02 β Reuse Existing Beans for Autowiring 08:31
- 5.4 Step 10-03 β Code Review: Method-based Autowiring 01:55
6) Key Questions about Spring 5 lectures β’ 22min
- 6.1 Step 11 β What will we learn? 02:58
- 6.2 Step 12 β Spring IoC: ApplicationContext & BeanFactory 03:19
- 6.3 Step 13 β Java Bean vs POJO vs Spring Bean 05:15
- 6.4 Step 14-01 β Spring Bean Autowiring 04:12
- 6.5 Step 14-02 β Primary & Qualifier Annotations 06:02
7) Using Spring Framework & Review 6 lectures β’ 17min
- 7.1 Step 15-01 β Use Spring to Manage Beans (Gaming App) 03:26
- 7.2 Step 15-02 β Manage Beans (continued) 07:28
- 7.3 Step 15-03 β Code Review 01:03
- 7.4 Step 16 β More Questions 01:21
- 7.5 Step 17 β Section 1 Review 02:14
- 7.6 Spring Framework Basics β Quiz 4 questions
8) Using Spring to Create & Manage Objects 17 lectures β’ 1hr 8min
- 8.1 Step 01-01 β Spring creates & manages beans 05:21
- 8.2 Step 01-02 β Create beans via @Component 04:35
- 8.3 Step 01-03 β Exercise: Play with Spring 04:02
- 8.4 Step 01-04 β Code Review 01:59
- 8.5 Code Backup & Step-by-Step 00:17
- 8.6 Step 02 β Primary & Qualifier Annotations 04:16
- 8.7 Step 03 β Which to use? Primary vs Qualifier 04:15
- 8.8 Step 04-01 β Types of Dependency 04:48
- 8.9 Step 04-02 β Field Injection 05:56
- 8.10 Step 04-03 β Setter & Constructor Injection 05:25
- 8.11 Step 05 β Important Terminology 05:30
- 8.12 Step 06 β @Component vs @Bean 04:34
- 8.13 Step 07 β Why dependencies? 03:39
- 8.14 Step 08 β Exercise: Real-world example 07:48
- 8.15 Step 09 β Section 2 Review 03:19
- 8.16 Section Quiz 4 questions
- 8.17 Bonus β How to be consistent? 02:09
9) Advanced Spring Features 16 lectures β’ 1hr 22min
- 9.1 Code Backup 00:17
- 9.2 Step 01 β Lazy vs Eager Initialization 08:14
- 9.3 Step 02 β Compare Lazy vs Eager 02:20
- 9.4 Step 03 β Bean Scopes: Prototype vs Singleton 09:17
- 9.5 Step 04 β Compare Scopes 02:06
- 9.6 Step 05 β PostConstruct & PreDestroy 06:59
- 9.7 Step 06 β Evolution: J2EE β Java EE β Jakarta EE 04:36
- 9.8 Step 07 β Jakarta CDI with Spring 07:23
- 9.9 Resources for Next Step 00:17
- 9.10 Step 08 β XML Configuration 12:20
- 9.11 Step 09 β Annotations vs XML 04:09
- 9.12 Step 10 β Stereotype Annotations 05:04
- 9.13 Step 11 β Important Annotations (Quick Review) 06:07
- 9.14 Step 12 β Important Concepts (Quick Review) 02:28
- 9.15 Step 13 β Spring Big Picture 08:29
- 9.16 Section Quiz 14 questions
10) Java REST API with Spring Boot & Hibernate 49 lectures β’ 4hr 51min
- 10.0 Overview β Building a REST API 04:04
- 10.1 Init REST API Project (Spring Initializr) 07:21
- 10.2 Hello World REST API 06:21
- 10.3 Return a Bean 04:30
- 10.4 Starters & Auto-Config (what happens behind) 09:06
- 10.5 Path Variable 04:13
- 10.6 Design Social Media API 07:28
- 10.7 User Bean & UserDaoService 06:43
- 10.8 GET β User Resource 08:28
- 10.9 POST β Create User 08:36
- 10.10 POST β Return Status & Location 11:24
- 10.11 Exception Handling β 404 07:49
- 10.12 Global Exception Handling 11:29
- 10.13 DELETE β Remove User 03:25
- 10.14 Validations 11:47
- 10.15 Advanced REST overview 01:12
- 10.16 OpenAPI & Swagger 04:57
- 10.17 springdoc-openapi dependency 00:15
- 10.18 Auto-gen Swagger Docs 09:53
- 10.19 Content Negotiation β XML 05:56
- 10.20 Internationalization (i18n) 09:39
- 10.21 Versioning β URI 09:01
- 10.22 Versioning β Param, Header, Content Negotiation 11:12
- 10.23 HATEOAS 10:43
- 10.24 Static Filtering 09:54
- 10.25 Dynamic Filtering 09:26
- 10.26 Actuator β Monitor APIs 06:54
- 10.27 HAL Explorer 04:54
- 10.28 JPA & Hibernate β Overview (H2) 01:17
- 10.29 H2 Console Setup & Seed Data 05:26
- 10.30 Connect REST API to H2 via JPA 10:35
- 10.31 Post Entity & Many-to-One (User) 10:22
- 10.32 GET β All Posts of a User 03:13
- 10.33 POST β Create Post for a User 06:21
- 10.34 JPA/Hibernate Queries 06:36
- 10.35 MySQL β Overview 01:06
- 10.35z OPTIONAL β Install Docker 04:25
- 10.36 OPTIONAL β Connect to MySQL 15:19
- 10.37 Basic Authentication 05:18
- 10.38 Enhance Security Config 08:45
- 10.39 Section Quiz 8 questions
- 10.40 Bonus β Self-care Tips 01:53
11) Spring AOP 12 lectures β’ 1hr 13min
- 11.1 Overview 01:02
- 11.2 What is AOP? 04:18
- 11.3 Create Spring Boot Project for AOP 04:19
- 11.4 Setup Components for AOP 09:57
- 11.5 Logging Aspect & Pointcuts 10:20
- 11.6 AOP Terminology 04:43
- 11.7 @After / @AfterReturning / @AfterThrowing 10:57
- 11.8 @Around with Timer 12:03
- 11.9 Common Pointcuts 08:31
- 11.10 @TrackTime Annotation 05:26
- 11.11 Wrap-up 01:43
- 11.12 Section Quiz 4 questions
12) Gradle with Spring Boot 6 lectures β’ 20min
- 12.1 Getting Started with Gradle 02:10
- 12.2 Create Spring Boot with Gradle 03:35
- 12.3 Build & Settings Files 03:55
- 12.4 Gradle Plugins (Java, Spring Boot) 05:00
- 12.5 Maven or Gradle? 05:17
- 12.6 Section Quiz 5 questions
13) Docker with Spring Boot 13 lectures β’ 1hr 5min
- 13.1 Getting Started with Docker 04:57
- 13.2 Docker Fundamentals 06:04
- 13.3 How Docker Works 13:33
- 13.4 Docker Terminology 02:43
- 13.5 Create Dockerfile for Spring Boot 09:17
- 13.6 Multi-stage Dockerfile 07:57
- 13.7 Optimize Dockerfile 08:08
- 13.8 Build Image with Spring Boot Maven Plugin 07:10
- 13.9 Quick Review 03:40
- 13.A Commands Used Cheatsheet
- 13.B Docker Desktop/Podman Requirement Note
- 13.C Section Quiz 4 questions
14) Unit Testing with JUnit 7 lectures β’ 39min
- 14.1 What is JUnit & Unit Testing? 05:28
- 14.2 First JUnit Project & Green Bar 10:43
- 14.3 First Code & First Unit Test 05:24
- 14.4 Other Assert Methods 08:01
- 14.5 Important JUnit Annotations 07:08
- 14.6 How to stay relevant 02:26
- 14.7 Wrap-up / Practice Tasks
15) Getting Started with Spring Boot 16 lectures β’ 1hr 16min
- 15.1 Goals 01:32
- 15.2 Before Spring Boot β 10,000 ft 03:16
- 15.3 Spring Initializr β Setup Project 07:17
- 15.4 Hello World API 08:58
- 15.5 Goal of Spring Boot 02:45
- 15.6 Starters 04:54
- 15.7 Auto-Configuration 07:41
- 15.8 DevTools 04:11
- 15.9 Profiles 07:05
- 15.10 ConfigurationProperties 07:31
- 15.11 Embedded Servers 06:27
- 15.12 Actuator 07:33
- 15.13 Spring Boot vs Spring vs Spring MVC 03:55
- 15.14 Review 00:38
- 15.15 Section Quiz 5 questions
- 15.16 Story of in28minutes 02:12
16) Learning Maven with Spring Boot 11 lectures β’ 51min
- 16.1 Introduction to Maven 02:17
- 16.2 Create Spring Boot with Maven 03:31
- 16.3 Explore pom.xml 08:33
- 16.4 Parent POM 07:15
- 16.5 Maven Further 05:35
- 16.6 Build Lifecycle 04:07
- 16.7 How Maven Works 07:36
- 16.8 Commands 04:03
- 16.9 Spring Project Versioning 06:12
- 16.10 Section Quiz 5 questions
- 16.11 Decide Your Goals 01:39
17) JPA & Hibernate with Spring Boot 14 lectures β’ 1hr 16min
- 17.1 Goals 01:24
- 17.2 New Spring Boot Project (JPA/Hibernate) 06:52
- 17.3 H2 Console & Create Table 07:24
- 17.4 Spring JDBC β Intro 03:58
- 17.5 JDBC β Insert Hardcoded Data 07:49
- 17.6 JDBC β Insert & Delete 09:01
- 17.7 JDBC β Query 05:36
- 17.8 JPA & EntityManager β Getting Started 12:23
- 17.9 Magic of JPA 03:16
- 17.10 Spring Data JPA β Intro 05:41
- 17.11 Spring Data JPA β Features 05:11
- 17.12 Hibernate vs JPA 05:00
- 17.13 Section Reflection
- 17.14 Bonus β What to do when you face a challenge 02:35
Course 2 (Friday β Live Instructor) 23 Topics
- Introduction to the Spring IoC Container and Beans
- Container Overview
- Bean Overview
- Dependencies
- Bean Scopes
- Customizing the Nature of a Bean
- Bean Definition Inheritance
- Container Extension Points
- Annotation-based Container Configuration
- Classpath Scanning and Managed Components
- Using JSR 330 Standard Annotations
- Java-based Container Configuration
- Environment Abstraction
- Registering a LoadTimeWeaver
- Additional Capabilities of the ApplicationContext
- The BeanFactory API
- Transaction Management
- DAO Support
- Data Access with JDBC
- Object Relational Mapping (ORM) Data Access
- Marshalling XML by Using Object-XML Mappers
- Spring Web MVC
- REST Clients
Application form: https://forms.gle/d5hpNMyEk52XRHo8A
All official information will be shared via email after registration.