MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
DILKAP RESEARCH INSTITUTE OF ENGINEERING & MANAGEMENT STUDIES
(POLYTECHNIC)
MICRO PROJECT
Academic Year (2023-2024)
TITLE OF PROJECT
Library Management System
Program: CO4I Course code: 22412
Course: Java Programming
Page | 1
MAHARASHTRA STATE
BOARD OF TECHNICAL EDUCATION Certificate
This is to certify that……………………………………………………………………………………………………
Roll No :- ……………………………………………………………….. of Fourth Semester of Diploma in
DILKAP RESEARCH INSTITUTE OF ENGINEERING & MANAGEMENT
STUDIES(POLYTECHNIC) of Institute, DRIEMS POLYTECHNIC (Code:1748) has
completed the Micro Project satisfactorily in Subject–: Java Programming (22412) for
the academic year 2023 - 2024 as prescribed in the curriculum.
Place:-.…………….
Enrollment No :-……………………………………..
Date:-…………
Exam. Seat No:-…………………………………….
Subject Teacher Head of the Department Principal
Page | 2
Member Details
Sr No. Name of member Roll No Enrollment Seat
No No
1. Neha Navale 13 2217480037
2. Yashashree Mhase 16 2217480040
3. Harshita Gawali 12 2217480036
Page | 3
INDEX
Sr No. Particular Page No.
01 Abstract 5
02 Introduction 6
03 Aim 7
04 System Requirement 8
05 ER Diagram 9
06 Function Used In Library 10-17
Management System
07 Program 18-21
08 Output 22-23
09 Conclusion 24
10 Reference 25
Page | 4
Abstract
Library management system is a project which aims in developing a computerized
system to maintain all the daily work of library. This project has many features which
are generally not availiable in normal library management systems like facility of user
login and a facility of teachers login. It also has a facility of admin login through which
the admin can monitor the whole system. It also has facility of an online notice board
where teachers can student can put up information about workshops or seminars being
held in our colleges or nearby colleges and librarian after proper verification from the
concerned institution organizing the seminar can add it to the notice board. It has also a
facility where student after logging in their accounts can see list of books issued and its
issue date and return date and also the students can request the librarian to add new
books by filling the book request form. The librarian after logging into his account ie
admin account can generate various reports such as student report, issue report,
teacher report and book report
Overall this project of ours is being developed to help the students as well as staff of
library to maintain the library in the best way possible and also reduce
the human efforts.
Page | 5
Intoduction
A Library Management System (LMS) is a software application that simplifies and
automates the operations of libraries. It is a complete system for managing library
duties such as purchases, member management, monitoring, storing, and circulation.
The primary objective of an LMS is to properly organize and manage the resources
available in a library, making it easier for librarians to conduct everyday operations
and create a user-friendly experience for users.The purpose of a library management
system is to operate a library with efficiency and at reduced costs. The system being
entirely automated streamlines all the tasks involved in operations of the library. The
activities of book purchasing, cataloging, indexing, circulation recording and stock
checking are done by the software. Such software eliminates the need for repetitive
manual work and minimizes the chances of errors.Students need access to authentic
information. An advanced organized library is an integral part of any educational
institution. In this digital age a web based library management system would be ideal
for students who can access the library’s database on their smartphones.
Page | 6
Aim
The aims and objectives areas follows:
Online book issue
Request column for librarian for providing new books
A separate column for digital library
Student login page where student can find books issued by him/her and date of return.
A search colunin to search availability of books
A teacher login page where teacher can add any events being organized in the college and important
suggestions regarding books.
Online notice board about the workshop.
Page | 7
System Requirements
To execute the below project, you will need the following business requirements:
MySQL Community Server
MySQL JDBC Connector
Java
Eclipse IDE
rs2xml.jar
The rs2xml jar is used to display the data in a table format. So, once you create a project in Eclipse
IDE, you have to import the
rs2xml jar and JDBC connector JAR into the project.
To do that, right-click on the project, choose Build Path -> Configure Build Path. In the dialog
box, which opens up, choose
Add External JARs, and add the JAR files. Once added, click on Apply and Close. Refer below.
Tables Considered
Now, for this particular project, I have considered three tables, which are:
Users -> This table consists of the columns {UID, Username, Password, Admin}
Books-> The book’s table consists of the columns {BID, Book name, Price, Genre}
Issue -> This table consists of the columns {IID, UID, BID, IssueDate, Period, ReturnDate, Fine}
Page | 8
ER Diagram
Page | 9
Functions used in Library Management System
Login
I have created this function to enable the user and the admin login. So, initially when a user logs
in for the first time, that user will be an admin by default, and the username and password will
be {admin, admin}. Refer below.
First steps after creating the data model are to make sure that you create an MS Access Database
called StudentDB.mdb. If you have MS Access 2007 or higher version, save your database with
For this schema, I have considered only one admin. So, once a user logs in as an admin, he or
she will be redirected to the admin menu as below. I will discuss the functions of the admin in
the admin menu section.
Page | 10
View Books
Once, you click on View Books button, you will see the below frame displaying all the books present in the
database, with their details.
View Users
The View Users button is used to view the current users on the system. Since we just have only one user
present i.e the admin, it will show you output as below:
Create/Reset
Page | 11
This functionality is used to create or reset a database. So, once you click on the button Create/Rest, you will
see the below output:
Add User
To add a user, click on the option “Add User” and mention details such as username, password and
choose the radio button user or admin. By default, it will be the user. Then, click on Create.
Once the user is created, you will see an output as below:
Now, again if you click on View Users button, you will see the below output:
Page | 12
Alright, so now that we have added a user. Let us say, that particular user wants to issue books. To do that,
the user has to choose the option of Issue Book.
Issue Book
Suppose, if you are the user, once you click on the Issue Book button, you have to mention the Book ID,
User ID, Period(Number of days for issuing the book), and the Issue Date as follows:
Then click on Submit. Once, you click on Submit, you will see the below dialog box:
Page | 13
Now, if you want to see the issued books details, you can use the View Issued Books functionality.
View Issued Books
Once you click on this button, you will see the following output:
Alright, so, now if the user logs in to the system, using the login function, as below:
Then the user will see the below User Menu.
Here, the user can view all the books in the database by using the View Books option and the books
issued by the user in the My Books section as below:
Page | 14
Now, if you wish to return the book, then you have to choose the option of Return Book.
Return Book
Once, you click on the Return Book, mention the Issue ID and the return date as below. Then click
on Return.
Then, you see a message box displaying the fine.
After that, you again see a dialog box, showing the message “Book Returned“. Refer below.
Now, if you click on the View Issued Books, you will see the below output:
Page | 15
Lastly, if you wish to add a book, you can use the option of Add Book.
Add Book
Click on the Add Book button, and mention the book name, genre and price. Then, click on the Submit
button. Refer below.
You will see a dialog box displaying the below message:
Apart from this, you can also, see the added books in the View Books section as below:
Page | 16
.
Page | 17
Program
Import java.util.ArrayList;
Import java.util.Scanner;
Class Book {
Private String title;
Private String author;
Private boolean available;
Public Book(String title, String author) {
This.title = title;
This.author = author;
This.available = true;
}
Public String getTitle() {
Return title;
}
Public String getAuthor() {
Return author;
}
Public boolean isAvailable() {
Return available;
}
Public void setAvailable(boolean available) {
This.available = available;
}
}
Class Library {
Page | 18
Private ArrayList<Book> books;
Public Library() {
This.books = new ArrayList<>();
}
Public void addBook(Book book) {
Books.add(book);
}
Public void displayAvailableBooks() {
System.out.println(“Available Books:”);
For (Book book : books) {
If (book.isAvailable()) {
System.out.println(book.getTitle() + “ by “ + book.getAuthor());
}
}
}
Public Book borrowBook(String title) {
For (Book book : books) {
If (book.getTitle().equalsIgnoreCase(title) && book.isAvailable()) {
Book.setAvailable(false);
Return book;
Page | 19
}
}
Return null;
}
Public void returnBook(Book book) {
Book.setAvailable(true);
System.out.println(“Book returned: “ + book.getTitle());
}
}
Public class LibraryManagementSystem {
Public static void main(String[] args) {
Library library = new Library();
// Adding some sample books
Library.addBook(new Book(“Java Programming”, “John Doe”));
Library.addBook(new Book(“Python Programming”, “Jane Smith”));
Library.addBook(new Book(“C++ Programming”, “James Johnson”));
Scanner scanner = new Scanner(System.in);
Page | 20
While (true) {
System.out.println(“\nMenu:”);
System.out.println(“1. Display Available Books”);
System.out.println(“2. Borrow a Book”);
System.out.println(“3. Return a Book”);
System.out.println(“4. Exit”);
System.out.print(“Enter your choice: “);
Int choice = scanner.nextInt();
Scanner.nextLine(); // Consume newline
Switch (choice) {
Case 1:
Library.displayAvailableBooks();
Break;
Case 2:
System.out.print(“Enter the title of the book you want to borrow:
“);
String borrowTitle = scanner.nextLine();
Book borrowedBook = library.borrowBook(borrowTitle);
If (borrowedBook != null) {
System.out.println(“You have borrowed: “ +
borrowedBook.getTitle());
Page | 21
} else {
System.out.println(“Sorry, the book is not available.”);
}
Break;
Case 3:
System.out.print(“Enter the title of the book you want to return: “);
String returnTitle = scanner.nextLine();
Book returnedBook = library.borrowBook(returnTitle);
If (returnedBook != null) {
Library.returnBook(returnedBook);
} else {
System.out.println(“Invalid book title or book is already
returned.”);
}
Break;
Case 4:
System.out.println(“Exiting the Library Management System.
Goodbye!”);
System.exit(0);
Break;
Default:
System.out.println(“Invalid choice. Please enter a number between
1 and 4.”);
}
}
}
}
Page | 22
Output
Menu:
1. Display Available Books
2. Borrow a Book
3. Return a Book
4. Exit
Enter your choice: 1
Available Books:
Java Programming by John Doe
Python Programming by Jane Smith
C++ Programming by James Johnson
Menu:
1. Display Available Books
2. Borrow a Book
3. Return a Book
4. Exit
Enter your choice: 2
Enter the title of the book you want to borrow: Python Programming
You have borrowed: Python Programming
Menu:
1. Display Available Books
2. Borrow a Book
3. Return a Book
4. Exit
Page | 23
Enter your choice: 3
Enter the title of the book you want to return: Python Programming
Book returned: Python Programming
Menu:
1. Display Available Books
2. Borrow a Book
3. Return a Book
4. Exit
Enter your choice: 4
Exiting the Library Management System. Goodbye!
Conclusion
Library Management Software is a valuable tool for educational institutions, enabling efficient
management of library resources and operations. By automating tasks, streamlining processes,
Page | 24
and enhancing accessibility, it simplifies the librarian’s role and offers a seamless experience
for students and staff. With its numerous benefits, this software is a cost-effective and practical
solution for modern libraries, helping them adapt to the digital age while maintaining the
integrity of their collections and services.
The Library Management System is much more user-friendly, faster in operation
and easy to manage than the manual one. Through the use of it, the librarian can
manage the whole data of the library in a single database in different tables with a
much more security than the traditional way.
Reference
Page | 25
I. https://1drv.ms/w/s!Avkg8pJMR19MlUYkmF6hf5a7OXMc?e=Z5dh7o
II. https://www.edureka.co/blog/library-management-system-project-in-java
III. https://www.ijraset.com/research-paper/library-management-system
IV. https://www.studocu.com/in/document/indian-institute-of-education-and-
business-management/marketing/library-management-system/30922725
V. https://www.ijraset.com/research-paper/library-management-system
Page | 26
WEEKLY PROGRESS REPORT
MICRO PROJECT
Sr No.
Week Activity Performed Sign of Guide Date
Discussion and finalization of
1 1st topic
Preparation and submission of
2 2nd Abstract
3 3rd Definition and codes
4 4th Editing and proof Reading Of
Content
5th Compilation of Report And
5 Presentation
6 6th Final submission of Micro Project
Sign of the student Sign of the faculty
Page | 27
ANEEXURE – II
Evaluation Sheet for the Micro Project
Academic Year: 2023-2024 Name of the Faculty: Datta Rathod
Course: Java Programming Course Code: 22412 Sem: IV
Title of the project: Library Management System
Cos addressed by Micro Project:
A: Formulate grammatically correct sentences.
B: Summarize comprehension passages.
C: Use relevant words as per context.
D: Deliver prepared speeches to express ideas, thoughts and emotions.
Major learning outcomes achieved by students by doing the project 1) Deliver
oral presentations using correct grammar.
2) Rewrite sentences using relevant forms of verbs.
3) Function as team member.
4) Follow Ethic.
Roll No Student Name Marks out of 6 for Marks out of 4for Total out of 10
performance performance in oral/
presentation
(Signature of faculty)
Page | 28