Skip to content

mandavamshi/Springboot_HandsOnProjects

Repository files navigation

Springboot_HandsOnProjects

This repository contains 7 hands-on Spring Boot projects designed to practice and demonstrate backend development concepts, RESTful APIs, and microservices using Spring Boot.


📂 Repository Contents

  1. demo.zip

    • A small Spring Boot project built around a Product entity.
    • Features CRUD operations, REST API endpoints, and database integration.
  2. Employee.zip

    • Employee Management System.
    • Implements employee CRUD operations, DTO/entity mapping, and service-layer logic.
    • Demonstrates best practices for REST controllers and exception handling.
  3. MobileConnection.zip

    • Backend system for Zee-Tech Mobile Connections.
    • Automates customer mobile connection management.
    • Features:
      • Apply for new connections
      • Modify connection type (Prepaid/Postpaid)
      • Revoke/Deactivate connections
      • View connection details by ID or mobile number
    • Tech Highlights:
      • JPA entity MobileConnection with fields:
        connectionId, customerName, mobileNumber, connectionType, status, activationDate
      • Repository: MobileConnectionRepository
      • Service layer: MobileConnectionService with validation logic
      • REST Controller: MobileConnectionController with endpoints:
        • POST /api/connections → Create new connection
        • PUT /api/connections/{id}/type → Update connection type
        • DELETE /api/connections/{id} → Deactivate connection
        • GET /api/connections/{id} → Get connection by ID
        • GET /api/connections/mobile/{mobileNumber} → Get connection by mobile number
      • Exception handling with custom exceptions (ConnectionNotFoundException, InvalidConnectionRequestException) and global handler using @ControllerAdvice.
      • Example JSON error response:
        {
          "timestamp": "2026-04-05T10:15:30",
          "status": 404,
          "error": "Connection Not Found",
          "path": "/api/connections/123"
        }
      • Sample application.properties:
        spring.datasource.url=jdbc:mysql://localhost:3306/zeetech
        spring.datasource.username=root
        spring.datasource.password=yourpassword
        spring.jpa.hibernate.ddl-auto=update
        spring.jpa.show-sql=true
        
      • Maven dependencies: Spring Boot Web, Spring Data JPA, MySQL driver, Validation, Lombok (optional).
  4. InfyInterns.zip

    • Interns Project Management/Allocation System.
    • Handles intern registration, project assignment, and tracking.
    • Demonstrates entity relationships and service-layer orchestration.
  5. Microservices_Demo_folder.zip

    • Basic microservices project on Movie and Hero entities.
    • Demonstrates inter-service communication, REST APIs, and microservice architecture principles.
  6. Demo_OneToOne.zip

    • Project showcasing One-to-One mapping between Customer and Address entities.
    • Demonstrates JPA relationships and cascading operations.
  7. FlightBooking.zip

    • Flight Booking System.
    • Entities: Flight and Booking.
    • Features booking workflows, and relational mapping operations.

🛠️ Tech Stack

  • Java 17+
  • Spring Boot 3.x
  • Spring Data JPA
  • RESTful APIs
  • Databases: H2 / MySQL / PostgreSQL
  • Maven

📖 How to Run

  1. Clone the repository:
    git clone https://github.com/your-username/Springboot_HandsOnProjects.git

Navigate to the desired project folder (e.g., demo, Employee, MobileConnection).

Build and run the application:

bash mvn spring-boot:run Access APIs via:

Code http://localhost:8080/ 🤝 Contribution Contributions are welcome! Fork the repository, open issues, or submit pull requests to improve the projects.

About

This repository contains 7 hands-on Spring Boot projects designed to practice and demonstrate backend development concepts, RESTful APIs, and microservices using Spring Boot.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors