Server portion of JChat. I learned a lot of fundamental things in Java from this project.
- Sending messages using TCP
- How Regex works (String.split())
- Threading and how to use Threads
- Dynamic Arrays (ArrayList<> in particular)
- How to use JFormDesigner and JFrame's in general.
- Waits for clients to connect
- Creates a new Thread for client
- Adds Thread to ArrayList of Threads (Actually wrapped in a ClientHandler class)
- Everytime a person sends a message/disconnects, everyone gets notified of the message to update their text area