Skip to content

rhythm1000/Library-Management-System-Java-MySQL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Library Management System (Java CLI + MySQL)

This is a console-based Library Management System implemented in Java using JDBC and MySQL.

Features

  • Admin login (stored in admin table — demo password 'admin123')
  • Book management: add, search
  • Member management: register, search
  • Issue/Return with transactions, due-date tracking
  • Prevent issuing already-issued books using SELECT ... FOR UPDATE

Setup

  1. Install MySQL and create a user (or use root). Update credentials in com.library.db.Database if needed.
  2. Run sql/schema.sql to create DB and tables.
  3. Build with Maven: mvn clean package
  4. Run: java -cp target/library-cli-1.0-SNAPSHOT.jar com.library.App

Notes for interviews

  • Uses DAO pattern, PreparedStatement to avoid SQL injection, transactions for issue/return, and row-locking with FOR UPDATE to avoid race conditions.
  • Improvements: BCrypt password hashing, connection pooling, full CRUD, unit tests, REST API + frontend.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages