Content ITV PRO
This is Itvedant Content department
Implementing Validation in Patient, Order, and Cart Modules
Business Scenario
The objective of this lab is to implement input validation for Patient, Order, and CartItem modules using Spring Boot validation annotations. This ensures that only valid and meaningful data is processed by the backend system.
Frontend applications allow users to:
Add items to cart
Enter patient details
Place orders
Introduction (Frontend Perspective)
Without validation:
Validation ensures:
Clean and accurate data
Improved user experience
Prevention of runtime errors
1
Add Validation Dependency
Ensure the following dependency is present in pom.xml:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>Dependency added
2
Apply Validation in Entities
Patient Entity
@NotBlank → for name
@Min → for age
@NotBlank → for address
Order Entity
@Positive → for totalAmount
@NotBlank → for status
@NotBlank → for paymentStatus
@NotNull → for createdAt
CartItem Entity
@Min → for quantity
@NotNull → for user
@NotNull → for medicine
3
Enable Validation in Controller
Add @Valid annotation in POST methods:
Example:
@PostMapping
public CartItem add(@Valid @RequestBody CartItem item) {
return service.addToCart(item);
}Apply same for:
PatientController
OrderController
Controller validation
Validation Flow
5
Test APIs using Postman
4
1. Patient Validation
Valid JSON
{
"name": "Ramesh",
"age": 30,
"address": "Mumbai"
}
Invalid JSON
{
"name": "",
"age": 0,
"address": ""
}2. Order Validation
Valid JSON
{
"totalAmount": 500,
"status": "PLACED",
"paymentStatus": "PAID",
"createdAt": "2026-06-10T10:00:00"
}Invalid JSON
{
"totalAmount": -100,
"status": "",
"paymentStatus": "",
"createdAt": null
}3. CartItem Validation
Valid JSON
{
"quantity": 2,
"user": { "id": 1 },
"medicine": { "id": 1 }
}Invalid JSON
{
"quantity": 0,
"user": null,
"medicine": null
}Postman validation responses
Global Exception Handling
6
Use @RestControllerAdvice to handle validation errors:
Returns clean error messages
Improves API response structure
Run Application
7
8
Start Spring Boot application
Verify validation is working
Application running
Verify Results
Valid data → saved successfully
Invalid data → rejected with error messages
Database contains only correct data
Database records
Pre-Lab Preparation
View food items and menus
Add items to cart
Place orders online
Topic : Weaving the world of Web
1) Navigating the world of Web
2) Building Blocks of Website,
3) Tag Titans: Fundamental Web Construct.
git pull origin branchNameGit Pull
Task 1: Understanding BRD
Before you start building anything, you need to clearly understand what the client actually wants.So, let’s begin by understanding the BRD (Business Requirement Document) shared by the client.
BRD Full Form is Business Requirement Details.BRD like a plan for building a house. This plan helps the builder understand what to build.In the same way,BRD tells developers what the client wants to build
Click to download BRD : BiteBox_BRD.pdf
Activity
After going through BRD list down the Core Features and Web Pages in the tabulated Format as shown Below.
| Col 1 | Col 2 | Col 3 |
|---|---|---|
| Row 1 | ||
| Row 2 | ||
| Row 3 |
Formula
Profit = Revenue - Cost
Task 2: Create WireFrame
Now that you understand the requirements, don’t jump into coding yet. Before development, we always visualize the layout.
Now lets create a simple wireframe for the homepage.
A wireframe is like a layout plan of a house. Before building, you decide where rooms, doors, and windows will be placed.Similarly, a wireframe helps you plan where elements like headers, images, and buttons will appear on a webpage—before adding design or colours.
Task 3: Code Editor Installation
Good work on completing the planning phase.
Now we will start development. Before that, make sure your system is ready with the required tools.
In this step we will install the VS code editor that will help to Write code efficiently,Organize files , Run and test your application
Go to the visual studio code official website
1
Click to download Homepage Wireframe : Homepage Wireframe
Choose your operating system(windows / Mac) and download the installation file.
Double click on the download app and Accept the agreement and click next
2
It is a long established fact that a reader will be distracted
b
Sub Steps
a
Double click on the download app and Accept the agreement and click next
public class MathSample {
public static void main(String[] args) {
int x = 10;
int y = 20;
int sum = x + y;
System.out.println("The sum is: " + sum);
}
}public class MathSample {
public static void main(String[] args) {
int x = 10;
int y = 20;
int sum = x + y;
System.out.println("The sum is: " + sum);
}
}
public class MathSample {
public static void main(String[] args) {
int x = 10;
int y = 20;
int sum = x + y;
System.out.println("The sum is: " + sum);
}
}
Great job!
You have successfully completed your first lab on BiteBox Project Onboarding.
In this lab, you have: Understood the BRD, Created a wireframe, Set up your development environment, Organised your project structure, Run your first program
You are now ready to move to the next stage of development
Checkpoint
Next-Lab Preparation
Git Push
git push origin branchNameTopic : Working with a Text and Listin HTML
1) Power of HTML text tags
2) Customizing your style with CSS
3) Listing it right using HTML
4) HTML Link up , attributes of tag, block vs inline elements
Text box Width : 887
Business Scenario, Pre-lab Preparation, Next-lab Preparation, Task, Activity, Checkpoint : 90%.
Steps : 1,2,3 [Sub Steps - a,b,c]
Normal Text, Topic Name : 80%
Subtopic : 70%
Code Box font Size : 16px
By Content ITV