Skip to content

alexaib2002/dam2-javafx_ddbb_project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaFX Employee Management Application

Client application for MySQL database made with JavaFX and MySQL applying functional programming principles. It's a simple employee management system that allows you to add, edit, and delete employees from the database.

By using a custom architecture, the application is easy to maintain and extend.

Scene Overview

Root scene is notified via callbacks of its children nodes how it should behave on each one. Note the top menu bar:

Login scene

image

Users must log in with their administration credentials stored in the database

Welcome scene

image

Administrators are greeted by this scene. Could be extended with general data of the DB.

Administration / Management scene

image

This scene allows administrators to add, edit, find and delete employees from the DB. It's bottom log console notifies every change or error on the backend side.

Dialog Overview

Every form dialog inherits a FormDialog class to validate its data. Their result converter is then assigned to their result callback, which indicates how the dialog should act after being ended.

Add user dialog

image

Delete user dialog (generic Alert)

image

Find user dialog

image

Update user department number dialog

image

Getting Started

Make sure you have cloned the repository and have Java 17 installed and all Maven dependencies are up-to-date.

You'll also need a Docker container running with mySQL and an accepted database loaded on it (careful, this app doesn't check if the database is compatible, you may end with unexpected exceptions!)

The image used for the container running the server is available on https://hub.docker.com/r/ubuntu/mysql. The port of mySQL should be mapped to the host port 30306.

The sample database data was loaded from https://github.com/datacharmer/test_db.

Credits

https://www.flaticon.com, for providing the main app icon and almost all icons of the app

About

MySQL client based on Java with JavaFX UI elements

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages