Updated Internship Project Report
Updated Internship Project Report
BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING
Submitted By
VANGALA K N V S SAI DEVAN
(213J1A05I1)
2024-2025
RAGHU INSTITUTE OF TECHNOLOGY
(AUTONOMOUS)
Affiliated to JNTU GURAJADA, VIZIANAGARAM
Approved by AICTE, Accredited by NBA, Accredited by NAAC with A grade
CERTIFICATE
This is to certify that this project entitled “Full Stack Java” done by “VANGALA K N V S SAI DEVAN
(213J1A05I1)” is a student of B.Tech in the Department of Computer Science and Engineering, Raghu Institute of
Technology, during the period 2021-2025, in partial fulfillment for the award of the Degree of Bachelor of
Technology in Computer Science and Engineering to the Jawaharlal Nehru Technological University, Gurajada
Vizianagaram is a record of bonafide work carried out under my guidance and supervision.
The results embodied in this internship report have not been submitted to any other University or
Institute for the award of any Degree.
EXTERNAL EXAMINER
i
DISSERTATION APPROVAL SHEET
This is to certify that the dissertation titled
CHAT APPLICATION USING SPRING WEBSOCKET
BY
VANGALA K N V S SAI DEVAN
(213J1A05I1)
Internal Examiner
External Examiner
DR.R. SIVARANJANI
HOD
(Professor)
Date:
ii
DECLARATION
This is to certify that this internship titled “Full Stack Java” is bonafied work done by
my me, impartial fulfillment of the requirements for the award of the degree B.Tech and
submitted to the Department of Computer Science and Engineering, Raghu Institute of
Technology, Dakamarri.
I also declare that this internship is a result of my own effort and that has not been copied
from anyone and I have taken only citations from the sources which are mentioned in the
references.
This work was not submitted earlier at any other University or Institute for the reward of
any degree.
Date:
Place:
(213J1A05I1)
iii
CERTIFICATE
iv
ACKNOWLEDGEMENT
I take this opportunity with great pleasure to put on record our ineffable personal
indebtedness to Mr. Raghu Kalidindi, Chairman of Raghu Institute of Technology for
providing necessary departmental facilities.
I sincerely express our deep sense of gratitude to Dr.R. Sivaranjani, Professor, Head of
Department in Department of Computer Science and Engineering, Raghu Engineering College,
for her perspicacity, wisdom and sagacity coupled with compassion and patience. It is my great
pleasure to submit this work under her wing. I thank for guiding us for the successful completion
of this project work.
I would like to thank Mr. D. Vikram Lakshmi Kanth, Assistant Professor for
providing the technical guidance to carry out module assigned. Your expertise in the subject
matter and dedication towards our project have been a source of inspiration for all of us.
I extend my deep hearted thanks to all faculty members of the Computer Science
department for their value-based imparting of theory and practical subjects, which were used in
the project.
Regards
VANGALA K N V S SAI DEVAN
(213J1A05I1)
v
TABLE OF CONTENTS
1. INTRODUCTION 7
2. PROBLEM STATEMENT 8
3. SYSTEM REQUIREMENTS 9
4. SYSTEM DESIGN 10
5. IMPLEMENTATION 11
6. RESULTS 13
7. TESTING 16
8. CONCLUSIONS 19
vi
INTRODUCTION
To address these challenges, there is a need for a solution that enables full-
duplex, real-time communication between clients and servers without the drawbacks
of conventional methods. WebSocket technology offers an ideal approach by
maintaining an open connection that allows simultaneous data transmission in both
directions. However, integrating WebSocket effectively can be complex without the
right frameworks.
This project seeks to design and implement a real-time chat application that
leverages WebSocket technology to deliver a seamless, low-latency user experience
while ensuring scalability and security. By utilizing the Spring Framework, the goal is
to simplify WebSocket implementation and provide an efficient, robust messaging
solution.
8
SYSTEM REQUIREMENTS
Software Requirements:
1. Spring Framework: The application requires Spring Boot for building backend services,
managing WebSocket connections, and providing support for RESTful APIs.
2. WebSocket Protocol: Implementation of the WebSocket protocol to enable real-time, full-
duplex communication between clients and the server, ensuring low-latency messaging and
efficient data transfer.
3. Development Environment: IntelliJ IDEA as the Integrated Development Environment
(IDE) for developing, testing, and debugging the application, along with Spring Initializr
for project setup and dependency management, enabling a streamlined development
process.
Hardware Requirements:
RAM - 16 GB
Hard Disk - 20 GB
Monitor - SVGA
9
SYSTEM DESIGN
STOMP is used to enable simple, efficient, and standardized messaging between clients and
The sender who sends the message is passed through HTTP protocol to WebSocket server
which is connected to database and can be viewed by the receiver and vice versa.
connection to ensure that only authorized users can participate in real-time communication.
10
IMPLEMENTATION
11
The following are the features of the Chat Application:
1. User Authentication: Upon launching the application, users are prompted to enter their
username, ensuring identification within the chat environment.
2. Messaging Interface: After entering their username, users are seamlessly redirected to a
user-friendly messaging interface for real-time communication.
3. User Presence Notifications: The application displays messages indicating when users join
or leave the chat, enhancing engagement and awareness among participants.
4. Multi-User Support: The application can manage multiple users simultaneously, allowing
for dynamic group interactions without performance degradation.
5. Quick Response Messages: Users can send and receive messages instantly, providing a
smooth and responsive chatting experience.
6. Access via Localhost: Anyone can connect and chat through the application using the URL
http://localhost:8080, making it easily accessible for local development and testing.
12
RESULTS
13
14
15
TESTING
Unit Testing:
Testing individual units or components of code to ensure they function correctly without errors.
16
Functional Testing:
Confirmed that the messaging interface loads without errors after user login.
Checked those all-necessary UI elements (e.g., chat window, input field) are displayed
correctly.
3. Join/Leave Notifications:
Validated that notifications are displayed correctly when users join or leave the chat.
Ensured that these notifications are visible to all connected users in real time.
Verified that messages sent by one user are received by others without noticeable delay.
Checked that messages appear in the chat window in the order they were sent.
6. Localhost Accessibility:
17
18
CONCLUSION
Thorough functional testing verifies that the application meets its design
specifications, confirming that features such as user authentication, the
messaging interface, and notifications operate correctly. This testing process
not only enhances reliability but also identifies areas for potential
improvement.
19