A Project Report "Unique CD and DVD Library Management System"
A Project Report "Unique CD and DVD Library Management System"
A Project Report "Unique CD and DVD Library Management System"
on
“unique CD and dvd Library
Management System”
For
CBSE (2018-19)
[As a part of the Informatics Practices Course
(065)]
SUBMITTED BY
NAME ROLL NO.
GURDIT SINGH
similar report on the topic has not been submitted for any
SIGN. ……………...
(Signature of Principal)
Date: ……………..
ACKNOWLEDGEMENT
We would like to extend our sincere thanks and gratitude to our teacher Ms.
Nidhi Agarwal. We are very much thankful to our Principal Ms. SheenaYadav
for giving valuable time and moral support to develop this software.
We would like to take the opportunity to extend our sincere thanks and gratitude
to our parents for being a source of inspiration and providing time and freedom
to develop this software project.
We also feel indebted to our friends for the valuable suggestions during the
project work.
Gurdit Singh
Class XII
C O N T E N T S
1. Introduction
3. Theoretical Background
5. System Implementation
7. User Manual
8. References
1. Introduction
(MIS) to automate the record keeping of various CDs including those of music
,softwares and movies with a view to enhance the decision making of the
functionaries.
relevant to the user. An application program is tied with the database for easy
This software, being simple in design and working, does not require much of
training to users, and can be used as a powerful tool for automating aCD Library
System.
During coding and design of the software Project, Java NetBeans IDE, a powerful
front-end tool is used for getting Graphical User Interface (GUI) based integrated
Course.
2. Objective & Scope of the Project
The objective of the software project is to develop a computerized MIS to automate the functions of a
CD store This software project is also aimed to enhance the current record keeping system, which will
help managers to retrieve the up-to-date information at right time in right shape.
The proposed software system is expected to do the following functionality-
To provide a user friendly, Graphical User Interface (GUI) based integrated and centralized
environment for MIS activities.
The proposed system should maintain all the records and transactions, and should generate the
required reports and information when required.
To provide graphical and user-friendly interface to interact with a centralized database based on
client-server architecture.
To identify the critical operation procedure and possibilities of simplification using modern IT tools
and practices.
In its current scope, the software enables user to retrieve and update the information from centralized
database designed with MySQL. This software does not require much training time of the users due to
limited functionality and simplicity.
During the development of CD Store Information System project, Java NetBeans IDE, a powerful, open
source event-driven form-based development environment is used for modular design and future
expandability of the system.
Despite of the best effort of the developer, the following limitations and functional boundaries are visible,
which limits the scope of this application software.
1. This software can store records and produce reports in pre-designed format in soft copy. There is no
facility yet to produce customized reports. Only specified reports are covered.
2. There is no provision to calculate fine or penalty etc. for defaulter members; however it can be
developed easily with the help of adding modules.
So far as future scope of the project is concerned, firstly it is open to any modular expansion i.e. other
modules or functions can be designed and embedded to handle the user need in future. Any part of the
software and reports can be modified independently without much effort.
3. Theoretical Background
To find and retrieve just the data that meets conditions you specify, including data from multiple tables,
create a query. A query can also update or delete multiple records at the same time, and perform built-in or
custom calculations on your data.
The DBMS interprets and processes users' requests to retrieve information from a database. In most cases, a
query request will have to penetrate several layers of software in the DBMS and operating system before the
physical database can be accessed. The DBMS responds to a query by invoking the appropriate
subprograms, each of which performs its special function to interpret the query, or to locate the desired data
in the database and present it in the desired order.
NetBeans started as a student project (originally called Xelfi) in the Czech Republic in 1996. The goal was
to write a Delphi-like Java IDE in Java. Xelfi was the first Java IDE (Integrated Development Environment)
written in Java, with its first pre-releases in 1997. Xelfi was a fun project to work on, especially since Java
IDE space was uncharted territory at that time. The project attracted enough interest that these students, once
they graduated, decided that they could market it as a commercial product. Soliciting resources from friends
and relatives for a web space, they formed a company around it.
Soon after, they were contacted by Roman Stanek, an entrepreneur who had already been involved in several
startups in the Czech Republic. He was looking for a good idea to invest in, and discovered Xelfi. He met
with the founders; they hit it off, and a business was born.
In the spring of 1999, NetBeans DeveloperX2 was released, supporting Swing. The performance
improvements that came in JDK 1.3, released in the fall of 1999, made NetBeans a viable choice for
development tools. By the summer of 1999, the team was hard at work re-architecting DeveloperX2 into the
more modular NetBeans that forms the basis of the software today.
Something else was afoot in the summer of 1999: Sun Microsystems wanted better Java development tools,
and had become interested in NetBeans. It was a dream come true for the NetBeans team: NetBeans would
become the flagship tool set of the maker of Java itself! By the Fall, with the next generation of NetBeans
Developer in beta, a deal was struck. Sun Microsystems had also acquired another tools company, During
the acqusition, the young developers who had been involved in open-source projects for most of their
programming careers, mentioned the idea of open-sourcing NetBeans. Fast forward to less than six months
later, the decision was made that NetBeans would be open sourced. While Sun had contributed considerable
amounts of code to open source projects over the years, this was Sun's first sponsored open source project,
one in which Sun would be paying for the site and handling the infrastructure.
Features of NetBeans
A free, open-source Integrated Development Environment for software developers. You get all the tools you
need to create professional desktop, enterprise, web, and mobile applications with the Java platform, as well
as C/C++, PHP, JavaScript, Groovy, and Ruby.
NetBeans IDE 8.2 introduces the JavaFX Composer, support for JavaFX SDK 1.3, OSGi interoperability,
support for the PHP Zend framework and Ruby on Rails 3.0, and more.
4. Problem Definition & Analysis
The hardest part of building a software system is deciding precisely what to build. No other part of the
conceptual work is so difficult as establishing the detailed technical requirement. Defining and applying
good, complete requirements are hard to work, and success in this endeavor has eluded many of us. Yet, we
continue to make progress.
Problem definition describes the What of a system, not How. The quality of a software product is only as
good as the process that creates it. Problem definition is one of the most crucial steps in this creation
process. Without defining a problem, developers do not know what to build, customers do not know what to
expect, and there is no way to validate that the built system satisfies the requirement.
Problem definition and Analysis is the activity that encompasses learning about the problem to be solved,
understanding the needs of customer and users, trying to find out who the user really is, and understanding
all the constraints on the solution. It includes all activities related to the following:
Identification and documentation of customer’s or user’s needs.
Creation of a document that describes the external behavior and the association constraints that will
satisfies those needs.
Analysis and validation of the requirements documents to ensure consistency, completeness, and
feasibility
Evolution of needs.
After the analysis of the functioning of a Public Library system, the proposed System is expected to do the
following: -
To provide a user friendly, Graphical User Interface (GUI) based integrated and centralized
environment for computerized CD Store.
The proposed system should maintain all the records and transactions, and should generate the
required reports and information when required.
To provide efficient and secured Information storage, flow and retrieval system, ensuring the
integrity and validity of records.
To provide graphical and user-friendly interface to interact with a centralized database based on
client-server architecture.
To identify the critical operation procedure and possibilities of simplification using modern IT tools
and practices.
5. System Implementation
Table Design:
The database of Library System contains 9 tables. The tables are normalized to minimize the redundancies
of data and enforcing the validation rules of the organization. Most of the tables are designed to store master
records. The tables and their structure are given below.
Table: AlbumsList
Column Name Type Size
Item_code Integer 30
Name char 50
Date of release char 30
price float (11,2)
Table: elogin_info
Column Name Type Size
username char 20
password char 20
Table: lib
Column Name Type Size
Acc_no(primary key,not null) int 4
btitle varchar 40
author varchar 30
pub_id int 4
price float
pdate date
edition int 4
status char 1
Table: login_info
Column Name Type Size
userid char 20
passwrdchar 20
Table: member
Column Name Type Size
Memb_no Integer 4
Mamb_Name varchar 40
Mem_add varchar 30
mDate date
medate date
mfee double (8,2)
mem_status char 1
mem_issue char 1
mem_phone varchar 12
Table: missue
Column Name Type Size
acc_no Integer 4
Memb_No Integer 4
idate date
rdate date
Table: movieslist
Column Name Type Size
Item_code Integer 30
Name char 50
Date_of_release char 30
price float (11,2)
Table: pcgameslist
Column Name Type Size
Item_code Integer 30
Name char 50
Date_of_release char 30
price float (11,2)
Table: movieslist
Column Name Type Size
Acc_no Integer 4
Memb_no Integer 4
idate date
rdate date
Frame: f1.java
Coding of delet.java
Statement stmt = null;
ResultSet rs = null;
String SQL = "SELECT * FROM Lib";
private void cmdExitActionPerformed(java.awt.event.ActionEvent evt) {
this.setVisible(false);
}
if (Ano.length() < 4)
{
int x = Ano.length();
int nl = 4 - x;
while (nl > 0){
Ano = Ano + " ";
nl--;
}
}
dModel.addElement(Ano + "- " + BTitle);
}
jList1.setModel(dModel);
} catch (Exception e) {
JOptionPane.showMessageDialog(this,e.getMessage());
e.printStackTrace();
} // TODO add your handling code here:
}
Frame: Return.java
// Extrating the Acc_no from Tissue table to find book details in Lib table
String query1 = "SELECT * FROM Tissue WHERE memb_no = " + (Mno) + ";";
// Create SQL statement and execute query.
stmt3 = con.createStatement();
rs3 = stmt3.executeQuery(query1);
int ACno = 0;
if (rs3.next()) {
ACno = rs3.getInt("acc_no");
txtAcno.setText(String.valueOf(ACno));
}
// Extrating the Library details for Acc_no from Lib table
String query2 = "SELECT * FROM Lib WHERE acc_no = " + (ACno) + ";";
// Create SQL statement and execute query.
stmt1 = con.createStatement();
rs1 = stmt1.executeQuery(query2);
String BTitle, Auth;
if (rs1.next()) {
BTitle = rs1.getString("btitle");
Auth = rs1.getString("author1");
txtBTitle.setText(BTitle);
txtAuth.setText(Auth);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
}
private void cmdReturnActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:3306/Library","root","kvuc");
// Missue table
int Mno = 0, Acno = 0;
Mno = Integer.parseInt(txtMNo.getText().trim());
Acno = Integer.parseInt(txtAcno.getText().trim());
// Steps to confirm return
int opt = JOptionPane.showConfirmDialog(null, "Are you sure to return this book ?");
if (opt == JOptionPane.YES_OPTION) {
String strSQLr = "Delete from Tissue where memb_no = " + (Mno);
stmt3.executeUpdate(strSQLr);
// Change the status as library book issued
char sta = 'Y'; // Lib table
String strSQLa = "Update Lib set status ='"+(sta)+"' where acc_no = " + (Acno);
stmt1.executeUpdate(strSQLa);
// Change the status as Member has a book
char stb = 'N'; // Member table
String strSQLb = "Update Member set mem_issue ='"+(stb)+"' where memb_no = " + (Mno);
stmt.executeUpdate(strSQLb);
JOptionPane.showMessageDialog(this, "Thanks for returning book");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:3306/Library","root","kvuc");
// Listing Members
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
while (rs.next()) {
String Mno = rs.getString("memb_no");
String MName = rs.getString("memb_name");
// To make the Member no. as 4 digit because we will extract 4 digit from list value
// in mouse click event.
if (Mno.length() < 4)
{
int x = Mno.length();
int nl = 4 - x;
while (nl > 0){
Mno = Mno + " ";
nl--;
}
}
dModel.addElement(Mno + "- " + MName);
}
jList1.setModel(dModel);
} catch (Exception e) {
JOptionPane.showMessageDialog(this,e.getMessage());
e.printStackTrace();
} // TODO add your handling code here:
}
Frame: aboutus.java
Coding of addemployee.java
public class addemployee extends javax.swing.JFrame {
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
String DB="jdbc:mysql://localhost/board_project";
/** Creates new form addemployee */
public addemployee() {
initComponents();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Add Employee");
t1.setToolTipText("emp code");
t2.setToolTipText("name");
t3.setToolTipText("address");
t4.setToolTipText("contact no.");
t4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
t4ActionPerformed(evt);
}
});
pack();
}// </editor-fold>
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new addemployee().setVisible(true);
}
});
}
Frame: albumslist.java
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Available Albums");
},
new String [] {
"NAME", "ADDRESS", "DATE OF JOINING", "CONTACT NO."
}
){
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class
};
pack();
}// </editor-fold>
private void exitActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose(); // TODO add your handling code here:
}
Frame: deal.java
Coding of delete.Java
private void deleteActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("com.mysql.jdbc.Driver");
String DB="jdbc:mysql://localhost/board_project";
Connection con=DriverManager.getConnection(DB,"root","kvuc");
Statement stmt=con.createStatement();
ResultSet rs =stmt.executeQuery("select * from emp;" );
String empcode = dt1.getText();
int opt = JOptionPane.showConfirmDialog(null, "Are you sure to delete this record ?");
if (opt == JOptionPane.YES_OPTION)
{
try {
String strSQL = "Delete from emp where emp_code = '"+(empcode)+"';";
int rowsEffected = stmt.executeUpdate(strSQL);
if (rowsEffected == 0)
JOptionPane.showMessageDialog(this, "Record does not exists");
else
{
JOptionPane.showMessageDialog(this,"Record Deleted");
dt1.setText("");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Unable to delete");
}
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
} // TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new delete().setVisible(true);
}
});
}
Frame: developer.java
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Edit Record");
addWindowFocusListener(new java.awt.event.WindowFocusListener() {
public void windowGainedFocus(java.awt.event.WindowEvent evt) {
formWindowGainedFocus(evt);
}
public void windowLostFocus(java.awt.event.WindowEvent evt) {
}
});
jList1.setModel(new DefaultListModel());
jList1.setToolTipText("select disk...");
jList1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jList1MouseClicked(evt);
}
});
jScrollPane1.setViewportView(jList1);
txtPID.setToolTipText("production id...");
jComboBox1.setModel(new DefaultComboBoxModel() );
jComboBox1.setToolTipText("select producer");
txtPrice.setToolTipText("price");
txtEdition.setToolTipText("edition");
txtBTitle.setToolTipText("title");
txtAcno.setToolTipText("disk id..");
txtStatus.setToolTipText("status");
txtAuth1.setToolTipText("director's name");
pack();
}// </editor-fold>
Statement stmt1 = null;
ResultSet rs1 = null;
String SQL1 = "SELECT * FROM publisher";
Statement stmt = null;
ResultSet rs = null;
String SQL = "SELECT * FROM Lib";
String strSQL = "Update Lib set btitle ='"+(bTitle)+"', author1 = '"+(Auth1)+"', author2 = '"+(Auth2)+"', pub_id = "+
(PID)+", price = "+(Price)+", pdate = '"+(Pdate)+"', edition = "+(edition)+", status = '"+(BStatus)+"' where acc_no = "
+ (Acno);
int rowsEffected = stmt.executeUpdate(strSQL);
if (rowsEffected == 0)
JOptionPane.showMessageDialog(this, "Record does not exists");
else
JOptionPane.showMessageDialog(this,"Record modified");
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
if (Ano.length() < 4)
{
int x = Ano.length();
int nl = 4 - x;
while (nl > 0){
Ano = Ano + " ";
nl--;
}
}
dModel.addElement(Ano + "- " + BTitle);
}
jList1.setModel(dModel);
// To list the publisher id and name into JComboBox1.
DefaultComboBoxModel cModel = (DefaultComboBoxModel) jComboBox1.getModel();
cModel.removeAllElements();
stmt1 = con.createStatement(); // To list publishers in JComboBox1 component
rs1 = stmt1.executeQuery(SQL1);
while (rs1.next()) {
String pubno = rs1.getString("pub_id");
String pubName = rs1.getString("pub_name");
// To make the publisher no. as 4 digit because we will extract 4 digit from list value
// in mouse click event
txtStatus.setText("Y"); // Because it is a new book, when it will be issue,
// it's status will be N.
if (pubno.length() < 4)
{
int x = pubno.length();
int nl = 4 - x;
while (nl > 0){
pubno = pubno + " ";
nl--;
}
}
cModel.addElement(pubno + "- " + pubName);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this,e.getMessage());
e.printStackTrace();
} // TODO add your handling code here: }
Frame: employee_details.java
Coding for employee_details.Java
private void displayrecordsActionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel tab = (DefaultTableModel) table.getModel();
try{
Class.forName("com.mysql.jdbc.Driver");
String DB="jdbc:mysql://localhost/board_project";
Connection con=DriverManager.getConnection(DB,"root","kvuc");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from emp;" );
String n,d,c,e;
while (rs.next())
{
n= rs.getString(1);
d= rs.getString(2);
c= rs.getString(3);
e= rs.getString(4);
Object rec[]={n,d,c,e};
tab.addRow(rec);
}
rs.close();
stmt.close();
con.close();
}
catch (Exception e)
{ JOptionPane.showMessageDialog(null, e.getMessage() ); } // TODO add your handling code here:
}
Frame: illist.java
Coding for illist.java
private void cmdExitActionPerformed(java.awt.event.ActionEvent evt) {
this.setVisible(false);
}
if (rs.next()) {
String MName = rs.getString("memb_name");
String MDate = rs.getString("mdate");
String MStatus = rs.getString("mem_status");
// Displaying the contents in respective text boxes.
txtMNo.setText(Mno);
txtMName.setText(MName);
txtMDate.setText(MDate);
txtMStatus.setText(MStatus);
} else {
JOptionPane.showMessageDialog(null, "Record does not found in Member table");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
// Tissue table
stmt3 = con.createStatement();
rs3 = stmt.executeQuery(SQL);
int Acno = Integer.parseInt(txtAcno.getText().trim());
int Mno = Integer.parseInt(txtMNo.getText().trim());
String idt = txtIDate.getText();
String rdt = idt; // Temporarily assigned for testing purpose
int code = JOptionPane.showConfirmDialog(this, "Are you sure to add?", "Confirmation Dialog Box",
JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
if (code == JOptionPane.YES_OPTION) {
// Record updated into Missue and Tissue tables
String strSQL = "INSERT INTO Missue(acc_no, memb_no, idate, rdate) VALUES ("+(Acno)+", "+(Mno)
+", '"+(idt)+"', '"+(rdt)+"')";
String strSQL1 = "INSERT INTO Tissue(acc_no, memb_no, idate, rdate) VALUES ("+(Acno)+", "+(Mno)
+", '"+(idt)+"', '"+(rdt)+"')";
stmt2.executeUpdate(strSQL);
stmt3.executeUpdate(strSQL1);
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:3306/board_project","root","kvuc");
// Listing Members
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
while (rs.next()) {
String Mno = rs.getString("memb_no");
String MName = rs.getString("memb_name");
// To make the Member no. as 4 digit because we will extract 4 digit from list value
// in mouse click event.
if (Mno.length() < 4)
{
int x = Mno.length();
int nl = 4 - x;
while (nl > 0){
Mno = Mno + " ";
nl--;
}
}
dModel.addElement(Mno + "- " + MName);
}
jList1.setModel(dModel);
// Listing books
stmt1 = con.createStatement();
rs1 = stmt1.executeQuery(SQL1);
while (rs1.next()) {
String Ano = rs1.getString("acc_no");
String BTitle = rs1.getString("btitle");
// To make the Accession no. as 4 digit because we will extract 4 digit from list value
// in mouse click event.
if (Ano.length() < 4)
{
int x = Ano.length();
int nl = 4 - x;
while (nl > 0){
Ano = Ano + " ";
nl--;
}
}
cModel.addElement(Ano + "- " + BTitle);
}
jList2.setModel(cModel);
} catch (Exception e) {
JOptionPane.showMessageDialog(this,e.getMessage());
e.printStackTrace();
}// TODO add your handling code here:
}
Frame: libui.java
}
else
JOptionPane.showMessageDialog(this,"Invalid user name , password");
lt1.setText("");
lp1.setText("");
rs.close();
stmt.close();
con.close();
}
catch (Exception e)
{ JOptionPane.showMessageDialog(null, e.getMessage()+"error in connection" ); }
}
else
if(rdemployee.isSelected()){
String usrid1 = lt1.getText();
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/board_project","root","kvuc");
stmt = con.createStatement();
rs = stmt.executeQuery("select password from elogin_info where username ='"+usrid1+"';" );
}
else
JOptionPane.showMessageDialog(this,"Invalid user name , password");
lt1.setText("");
lp1.setText("");
rs.close();
stmt.close();
con.close();
}
catch (Exception e)
{ JOptionPane.showMessageDialog(null, e.getMessage()+"error in connection" ); }
}// TODO add your handling code here:
}
Frame: movieslist.java
Frame: pcgameslist.java
Software Requirement-
Windows 2000/XP OS is desirable.
NetBeans Ver 5.1 or higher should be installed with JDK and JVM.
MySQL Ver 6.1 with Library Database must be present at machine.
Database Installation
The software project is distributed with a backup copy of a Database named board_project with required
tables. Some dummy records are present in the tables for testing purposes, which can be deleted before
inserting real data. The project is shipped with board_project.sql file which installs a database and tables in
the computer system.
Note: The PC must have MySQL server with user (root) and password (kvuc) . If root password is any other
password, it can be changed by running MySQL Server Instance Configure Wizard.
Start Program MySQL MySQL Server MySQL Server Instance Config Wizard
Provide current password of root and new password as “kvuc” , this will change the root password.
To install a MySQL database from a dump file ( board_project.sql) , simply follow the following steps.
Step 1: Copy the board_project.sql file in C:\Program files\Mysql\MySql server 5.1\Bin folder.
Step 2: Open MySQL and type the following command to create the dabase named Library.
mysql> create database board_project;
Step 3: Open Command Window (Start Run cmd)
Step 4: Go to the following folder using CD command of DOS.
C:\Program files\Mysql\MySql server 5.1\Bin>
Step 5: type the following command on above prompt -
C:….\bin> mysql -u root -pkvuc board_project < board_project.sql
This will create a board_project databse with required tables.
7.2 Working with SoftwareProject:
The Unique CD and DVD Library consists of the following logically organised Menu-structure for the easy
functionality. User may choose the menu options for corresponding works.
Report:
This menu item gives options to check the available CDs and DVDs and members list.
CDs and DVDs:
This menu gives options to show the issued CDs and DVDs .
About Us:
This menu item gives the information of the software and its developers.
8. References
In order to work on this project titled -LibSys – Public Library Management System, the following books
and literature are refered by me during the various phases of development of the project.
(3) http://www.mysql.org/
(4) http://www.netbeans.org/
Other than the above-mentioned books, the suggestions and supervision of my teacher and my class
experience also helped me to develop this software project.