Skip to content
This repository has been archived by the owner on Jun 23, 2021. It is now read-only.
/ SunnyChat Public archive

A chat application with database support, written in Java RMI.

License

Notifications You must be signed in to change notification settings

mchobbylong/SunnyChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SunnyChat

A simple chat application written in Java RMI.

This is a course work project for COMP4073 - Distributed Computing Systems, and it is far from finish. Please read its code and use it for learning purposes only.

Features

  • Database (MariaDB) for persistent storage

  • Account system (login & register with username and password)

  • Friend list & group list

  • Sending & responding friend invitations

  • Sending & receiving files

  • Online users list

  • Seperated message areas for different friends and groups

Future improvements

  • Storing passwords after encryption

  • SSL transmission (maybe by utilizing custom socket factory?)

  • Anti SQL injection

  • Sending & receiving images

  • Sending & receiving files in small pieces, but not the whole file (to save memory when sending large files)

Runtime screenshots

login

register

main_gui

add_a_friend

enter_group_chat

view_group_chat_members

Launch guide

Prerequisite

  1. MariaDB database running on localhost:3306 with account root and empty password.

  2. JDK 8 x64

  3. Java IDE (recommendations: Visual Studio Code, Eclipse 2020)

To launch

  1. Import the file chat.sql into the database.

  2. Launch the Server in the IDE.

  3. Launch the Client in the IDE.

  4. Enjoy!

About

A chat application with database support, written in Java RMI.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages