6-Day Fullstack Crash Course – Industry Essentials
Java + Spring Boot + React + MySQL
Prepared by: Artibots Training Division
Introduction
This handbook is designed for a 6-day intensive Fullstack Crash Course covering Java, Spring Boot, React, and
MySQL. It focuses on industry essentials: building REST APIs, integrating with modern frontend frameworks, and
deploying complete web applications. Unlike traditional JSP/Servlet training, this course equips learners with
real-world skills relevant to today’s job market.
Environment Setup
• Java 17 – for backend development.
• IntelliJ IDEA / Spring Tool Suite – IDE for Java Spring Boot.
• MySQL or PostgreSQL – Database.
• Postman – API testing tool.
• [Link] + npm – Required for React frontend.
• VS Code – IDE for React.
• Git + GitHub – Version control and collaboration.
Day 1 – Java & Web Fundamentals
• Quick refresher on OOP & Java essentials.
• Client-server model & web application basics.
• Setting up a Spring Boot project using Spring Initializr.
• Explaining project structure: [Link], main class, resources folder.
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, Fullstack World!";
}
}
Day 2 – Backend with Spring Boot
• Introduction to REST APIs, controllers, services, repositories.
• Connecting to MySQL/Postgres with Spring Data JPA.
• Performing CRUD operations.
• Testing APIs using Postman.
@Entity
public class User {
@Id @GeneratedValue
private Long id;
private String name;
private String email;
}
@Repository
public interface UserRepository extends JpaRepository<User, Long> {}
@RestController
@RequestMapping("/api/users")
public class UserController {
@Autowired private UserRepository repo;
@PostMapping public User add(@RequestBody User u) { return [Link](u); }
@GetMapping public List<User> all() { return [Link](); }
}
Day 3 – Advanced Backend
• Dependency Injection & annotations.
• Validation with Hibernate Validator (@Valid).
• Global exception handling (@ControllerAdvice).
• Spring Security basics – securing endpoints with JWT.
@RestControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler([Link])
public ResponseEntity<String> handleException(Exception ex) {
return [Link](HttpStatus.BAD_REQUEST).body([Link]());
}
}
Day 4 – Frontend with React
• Introduction to React, components, props, state, hooks.
• Setting up React project with Vite or Create React App.
• Fetching backend data with Axios.
• Displaying data with reusable components.
import React, { useState, useEffect } from 'react';
import axios from 'axios';
function UserList() {
const [users, setUsers] = useState([]);
useEffect(() => {
[Link]('[Link]
.then(res => setUsers([Link]));
}, []);
return (
<ul>{[Link](u => <li key={[Link]}>{[Link]}</li>)}</ul>
);
}
export default UserList;
Day 5 – Fullstack Integration
• Connecting React frontend to Spring Boot backend.
• Implementing CRUD UI.
• Error handling in frontend.
• Version control using Git + GitHub.
function addUser() {
[Link]('[Link] {name: 'Arun', email: 'arun@[Link]'})
.then(res => [Link]([Link]))
.catch(err => [Link](err));
}
Day 6 – Mini Project & Deployment
• Final mini project: Task Manager App.
• Backend: Spring Boot CRUD with MySQL.
• Frontend: React app consuming backend APIs.
• Deployment on local server / optional cloud hosting.
# Example Deployment with Maven
mvn clean install
java -jar target/[Link]
# React build and serve from Spring Boot (place build/ inside static/)
npm run build
Mini Project: Task Manager App
Problem Statement:
Build a Task Manager where users can create, read, update, and delete tasks. The backend will be built in Spring
Boot, the frontend in React, and MySQL will be used as the database.
Database Schema (ER Diagram)
Table Columns
Users id (PK), name, email, password
Tasks id (PK), title, description, status, user_id (FK)
API Contract (Example)
POST /api/tasks -> Create a new task
GET /api/tasks -> Get all tasks
GET /api/tasks/{id} -> Get task by ID
PUT /api/tasks/{id} -> Update a task
DELETE /api/tasks/{id} -> Delete a task
Final Wrap-Up
• Upload the mini project to GitHub to build a professional portfolio.
• Extend your knowledge with Docker, Cloud (AWS/Azure), and CI/CD pipelines.
• Continue learning advanced Spring Boot features: Microservices, Kafka, Security.
• React extensions: Redux, Context API, TypeScript.