An application with GUI which allows you work with data of different Cities
Functionality:
- Registration and Authentication.
- Managing with table of existing cities.
- Filtration and Sorting
- Supporting different command of manipulation with cities.
- help: display help for available commands.
- add: add a new City.
- update id: refresh the value of the City item whose id is equal to the given one.
- remove_by_id id: remove a City item by its id.
- clear: delete all items.
- execute_script file_name: execute the script from the specified file. The script contains commands in the same form as they are entered by the user in interactive mode.
- remove_last : delete last creating City item.
- sort: sort the table.
- history: print last 8 commands.
- remove_all_by_meters_above_sea_level metersAboutSeaLevel: delete all elements, which have the value of attribute metersAboveSeaLevel equals specified value.
- group_counting_by_population: group all elements by attribute population, print count of elements from each group.
- Visualization of Cities, each user has their own color of created cities.
- Clicking on visualized items show information about it.
- Adding, deleting and updating cities.
- The GUI of the client part supports Russian, Finnish, Bulgarian and Spanish (Mexico) languages / locales.
Technologies:
- Swing
- Graphics
- Client-Server interaction by Sockets
- Multithreading and Synchronization
- Pattern Command
- Translation by using Resource Bundle
- Maven
Launch
mvn package -PServer
- Write port in console
mvn package -PClient
- Write the same port