Advance Java Project PPT
Advance Java Project PPT
Presented By :
Shivansh Thapliyal -
2101330100213
Introduction :
"Hello everyone! today we're going to explore the real-time chat applications
using Spring Boot, a handy tool for building web applications. Imagine being
able to send a message to a friend and having them receive it instantly, no
matter where they are With Spring Boot, we'll learn how to create our own
chat application, understanding the basics of how messages are sent and
received between users.
Prerequisites :
Instant Messaging: Users can send and receive messages in real-time, enabling instant
communication between individuals
WebSocket Support: Spring Boot provides built-in support for WebSocket, enabling
bidirectional communication channels between clients and servers. This allows for
efficient and low-latency messaging in real-time.
WebSocket :
Simple (or Streaming) Text Oriented Message Protocol (STOMP), formerly known as
TTMP, is a simple text-based protocol, designed for working with message-oriented
middleware (MOM). It provides an interoperable wire format that allows STOMP
clients to talk with any message broker supporting the protocol.
Since websocket is just a communication protocol, it doesn’t know how to send a
message to a particular user. STOMP is basically a messaging protocol which is useful
for these functionalities.
STOMP provides a straightforward way to connect and communicate between clients
and a server over WebSocket.
Spring Boot :
Spring Boot is a framework built on top of the Spring Framework. It simplifies the
process of building and deploying Spring-based applications by providing default
configurations, embedded servers, and a range of starter dependencies. Spring Boot aims
to accelerate application development and reduce repeated code by following the legal
over configuration patterns.
Features :
• Create stand-alone Spring applications
• Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
• Provide opinionated 'starter' dependencies to simplify your build configuration
• Automatically configure Spring and 3rd party libraries whenever possible
• Provide production-ready features such as metrics, health checks, and externalized
configuration
• Absolutely no code generation and no requirement for XML configuration
Maven :
Maven is a build automation tool primarily used for managing Java projects'
dependencies, building, and packaging applications. It uses a Project Object Model
(POM) file to describe the project configuration, dependencies, and build process. Maven
simplifies dependency management by automatically resolving and downloading
dependencies from remote repositories.
Maven is often used alongside Spring Boot to manage dependencies and build Spring
Boot applications. Developers typically use Maven to handle project dependencies and
build configurations while leveraging Spring Boot to simplify the development of Spring-
based applications.
Features :
• A huge, continuously growing repository of user libraries
• The ability to set up projects easily, using best practices
• Dependency management, featuring automatic updating
• Ensures consistent usage across all projects
• It’s extensible, and you can easily write plug-ins using scripting languages or Java.
Quick Steps to create a real time chat application :