# π Java Library Management System
A console-based Java application that simulates a basic Library Management System. Designed with object-oriented principles, this project handles book inventory operations such as adding, viewing, issuing, returning, and searching for books using an interactive menu-driven interface.
- π Add, view, and manage a dynamic collection of books
- π Issue and return books with status tracking
- π Search for books by their unique ID
- β Handles invalid operations with informative messages
- π§ͺ Easily extendable for user management or file storage
| Technology | Usage |
|---|---|
| Java | Core logic and structure |
| OOP | Classes, objects, methods |
| ArrayList | Dynamic book storage |
| Scanner | User input handling |
LibraryManagementSystem/ βββ Book.java # Book class with ID, name, author, issue status βββ Library.java # Manages books (add, view, issue, return, search) βββ User.java # (Optional) For future user-specific features βββ libraryManagementSystem.java # Main program with menu and control flow
- β Hands-on with Java classes, methods, and encapsulation
- β
Worked with
ArrayListand control structures - β Built a mini CLI app following clean, modular code practices
- β Understood user interaction in Java console apps
- Add search by book name or author
- Maintain issued books per user
- Implement data persistence (e.g., using files or databases)
- Build a GUI version using Swing or JavaFX
- Role-based system: Admin vs. User access
- JDK installed
- IDE (e.g., IntelliJ, Eclipse) or terminal
javac libraryManagementSystem.java
java libraryManagementSystem



