A Java desktop application built using JavaSE(business logic), JavaFx(GUI), MySQL(backend database). The design pattern used is the infamous MVC(Model View Controller). This is, by no means, a serious attempt in building an actual loan management system. But it can serve as a nice starting point for understanding software development. It also makes one appreciate how big of a difference a good design pattern can make in the ease of developing an application. This project was given to me by the course instructor as a part of the OOP course during my 4th semester of college
EclipseIDE is used for building the project. Using the same to run the project could turn out to be of great help!
Dependency information is included in the file pom.xml. Since it is a maven project, the user will not have to go through the hassle of downloading all the dependency jars. Eclipse will do that for us by parsing the pom.xml file and downloading all dependencies fromt the mvn repository.
for Windows---https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2020-09/R/eclipse-inst-jre-win64.exe
for Linux---https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2020-09/R/eclipse-inst-jre-linux64.tar.gz
for Mac OS X---https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2020-09/R/eclipse-inst-jre-mac64.dmg
The app is configured to use a MySQL Backend database. Althought the relevant lines for database integration are commented out so that the user can first get a hands-on feel of how the app looks like and then uncomment the lines, if needed.
Modifications will be needed on the files:-
src/Launch.java
src/DataStore.java
src/controllers/RegistrationScreenController.java
src/controllers/LoginScreenController.java
Launch.java --> Assign appropriate values to string constants DATABASE, USERNAME, PASSWORD.
DATABASE = It should be a jdbc URL of the form jdbc:mysql://server/database. For example, if the server is the local machine and database name is test then the url would be jdbc:mysql://localhost/test.
USERNAME = It should be the username for the mysql server provided above.
PASSWORD = It should be the password for the username above.
DataStore.java --> uncomment lines 257 to 262
RegistrationScreenController.java --> uncomment lines 68 to 83
LoginScreenController.java --> uncomment lines 45 to 80 and 90 to 119 and delete lines 29 to 36.
One more reason for why to use the eclipse IDE is that it will automatically set all the requried build paths and environment variables needed to run the project. If all these configurations are to be done manually then it would lead to nothing but a farrago of errors and a hectic day in the life of a developer.