This project is a Library Management System built using Java, JavaFX, MySQL, and Hibernate. It is designed to manage the operations of a library, including book borrowing, member management, and transaction tracking. The system provides a user-friendly interface for both administrators and members to interact with the library's resources.
- Admin Management: Admins can manage library branches, books, and member accounts.
- Member Management: Members can sign up, sign in, and manage their profiles.
- Book Management: Admins can add, update, and delete books. Members can view available books and borrow them.
- Transaction Management: Track book borrowings, returns, and due dates.
- Email Notifications: Send email notifications for account creation, password changes, and account deletions.
- Java: The core programming language used for the application.
- JavaFX: Used for building the graphical user interface.
- MySQL: The database system used to store library data.
- Hibernate: An ORM (Object-Relational Mapping) framework used to interact with the MySQL database.
controller
: Contains the controllers for handling UI interactions.dto
: Contains Data Transfer Objects (DTOs) for transferring data between layers.entity
: Contains entity classes representing the database tables.repository
: Contains repository interfaces and implementations for database operations.service
: Contains service interfaces and implementations for business logic.util
: Contains utility classes for email sending and session management.
-
Clone the repository:
git clone https://github.com/jlokitha/Library-Management-System.git
-
Open the project in IntelliJ IDEA:
- Open IntelliJ IDEA.
- Select
File > Open
and choose the cloned project directory.
-
Set up the database:
- Create a MySQL database named
BookWorm
. - Import the provided SQL script to create the necessary tables and initial data.
- Create a MySQL database named
-
Configure Hibernate:
- Update the
hibernate.cfg.xml
file with your MySQL database credentials.
- Update the
-
Build and run the project:
- Open the project in IntelliJ IDEA.
- Build the project and run the main application class.
-
Admin:
- Sign in with admin credentials.
- Manage books, branches, and member accounts.
- View and manage transactions.
-
Member:
- Sign up for a new account.
- Sign in with member credentials.
- View available books and borrow them.
- Manage personal profile and view transaction history.
This project is licensed under the MIT License. See the MIT License file for more details.
© 2024 Janindu Lokitha