This is a simple library management system that I have created using Java and MySQL. The system allows you to add, update, delete, and search for books. It also allows you to issue and return books. The system is designed to be used by librarians and library staff.
- Add books
- Update books
- Delete books
- Search by book title and id
- Add authors
- Update authors
- Delete authors
- Search by author name and id
- Assign authors to books
- Get a list of books by author
- Get a list of book published in a after some date
- Java
- Spring Boot
- MySQL
The database schema is as follows:
-
Book
- id
- title
- isbn
- published_date
- author_id
- quantity
- isAvailable
- price
- category
- publisher
- language
- pages
- description
- created_at
- updated_at
-
Author
- id
- name
- phone
- address
-
/books
- Get all books (name
anddate
query parameters are optional) (GET) -
/books/{id}
- Get book by id (GET) -
/books
- Add a book (POST) -
/books/{id}
- Update a book (PUT) -
/books/{id}
- Delete a book (DELETE) -
/books/{id}
- Update partial book details (PATCH) -
/books/{id}/author/{authorId}
- Assign an author to a book (POST) -
/books/author/{id}
- Get books by author (GET) -
/books/publishedAfter/{date}
- Get books published after a date (GET) -
/authors
- Get all authors (name
query parameter is optional) (GET) -
/authors/{id}
- Get author by id (GET) -
/authors
- Add an author (POST) -
/authors/{id}
- Update an author (PUT) -
/authors/{id}
- Delete an author (DELETE) -
/authors/{id}
- Update partial author details (PATCH)
- Clone the repository
- Update the
application.properties
file with your MySQL username and password - Run the application
Tech-savvy learner/programmer pushing boundaries of online tech. Passionate about new tools, seeking challenges to advance skills.