/MULTIUSER-CHAT-APPLICATION

This repo contains a MULTIUSER-CHAT-APPLICATION which is build using Java, Swing GUI, JDBC, Multithreading, Socket Programming and Design Patterns.

Primary LanguageJava

Multiuser Chatting Application in Java

This is a multiuser chatting application developed in Java, utilizing various concepts such as GUI programming, socket programming, JDBC, MySQL, multithreading, and design patterns. The application allows multiple users to connect and communicate with each other in real-time.

Features

User registration and login: Users can create new accounts and log in to the application.

Chat rooms: Users can join different chat rooms and communicate with other users in the same room.

Real-time messaging: Users can send and receive messages in the chat rooms.

Message BroadCasting: Message from any user is broadcasted to all users/clients.

Persistent data storage: User information(registered users) are stored in a database using JDBC.

Technologies Used

Java: The core programming language used for developing the application.

Swing: A Java GUI toolkit used for creating the graphical user interface.

Socket Programming: TCP/IP sockets are used for network communication between the client and server.

JDBC (Java Database Connectivity): Used for connecting and interacting with the database.

Multithreading: Multiple threads are utilized to handle simultaneous client connections and improve performance.

Window Builder: A powerful and popular GUI designer tool for Java applications.

Design Patterns: Various design patterns such as Singleton, Observer, and Factory may be used to enhance the application's structure and maintainability.

Login/Register Screen -

image

Screen for starting the group chat -

image

Chatting Screen -

image