Sie sind auf Seite 1von 40

1.

INTRODUCTION

1.1 ABSTRACT
In a library system, student can take books and return the books and renewal the books
taken by them and they have permission to access only certain no of books, staff can take only
certain no. of books at a time and they have permission to use that book for any no. of days.
Student has to renewal the books taken by them for every 15 days, if they did do that they have
to pay a fine of fixed amount for the book for one day. Until they pay the fine, they are not
eligible to take any other books. Each and every time, the administrator or the librarian has to
update the database of the library so that the student or the staff can be able to know how many
books are there in the library, only librarian can able to change the database of the library.
1.2 PURPOSE OF THE PROJECT
Library management project facilities to register the books, add or remove book, search /
issue book, return book, and to view transaction records. The books are searched based on the
constraint (author name / book id). It limits every student to have not more than 2 books in his
account. After the books are issued for the particular member using the member id.books
includes the returning and borrowing dates. It assigns fine to the student if he/she fails in
returning the book before the returning date. It also gives admin to check the billing states of the
books available in the library.
The main purpose of library management system is to provide security to the librarian of
storing the book details. This will provide the user flexibility in getting the book from the library.
This also reduces the burden of storing the records in the books.

1.2.1 OBJECTIVE OF THE PROJECT


The objectives of the library management are

Flexibility for finding the information about staff


Of help to the head
1

So requires automating
Move towards to a paperless work

1.3 Proposed System


Overview
Functional requirements
Nonfunctional requirements

Response time

Throughput

Resource usage

Reliability

Availability

Recovery from failure

Allowances for reusability

Platform

Technology to be used

2.REQUIREMENT ANALYSIS

2.1 SOFTWARE REQUIREMENTS

Softwares: JAVA 1.6, Tomcat


Operating system: windows XP
Front-end: JSP
Back end: Oracle

2.2 HARDWARE REQUIREMENTS

Processor: intel Pentium IV


Ram:256MB

Hard disk: 250MB

2.3 FUNCTIONAL REQUIREMENTS


Functional requirements describe what the system should do, i.e the services provided
from the users and for other systems. The functional requirements should include

Everything that a user of a system would need to know regarding what the system does
Everything that would concern any other system that has to interface to this system.

2.4 NON FUNCTIONAL REQUIREMENTS


Non functional requirements are the constraints that must be adhered to during
development. They limit what resources can be used and set bounds on aspects of the softwares
quality. One of the most important things about non functional is to make them verifiable.

3.ROLES

3.1 ADMINISTRATOR ROLE


The role of the administrator is to maintain the database by performing some specified
operations at the server.
The administrator has to perform many tasks like

Adding the details of the book


Deleting the details of the book
Modifying the details of the book
Searching for the details of the book
Updating the database

3.2 DATABASE ROLE


The role of database is to store the id and password that were given by the administrator
or the user at time of registering and then use those details for authentication purpose. The
database also plays a key role in creating domains and new data in a domain.

4.LITERATURE SURVEY
4.1 JAVA SERVER PAGES
4

A Java server page is a technology for developing web pages that include dynamic
content. Unlike plain HTML page, which contains static content that always remain the same , a
JSP page can change its content based on any number of variable items, including the identity of
the user, the users browser type, information provided by the user, and selections made by the
user. This functionality is key to web applications such as online shopping and employee
directories, as well as for personalized and internationalized content.
A JSP page contains standard markup language elements, such as HTML tags, just like a
regular web page. However, a JSP page also contains special JSP elements that allow the server
to insert dynamic content in the page. JSP elements can be used for a variety of purpose, such as
retrieving information from a database or registering user preferences. When a user asks for a
JSP page, the server executes the JSP elements, merges the result with the static parts of the
page, and sends the dynamically composed page back to the browser.
JSP defines a number of standard elements that are useful for any web applications, such
as accessing JavaBeans components, passing control between pages and sharing information
between requests, pages, and users. Developers can also extend the JSP syntax by implementing
application specific data. One such set of commonly needed custom elements is defined by a
specification related to the JSP specification: the JSP standard tag library (JSTL) specification.
The combination of standard elements and custom elements allows for the creation of powerful
web application.
In the early days of web, the common gateway Interface (CGI) was the only tool for
developing dynamic web content. However CGI is not an efficient solution. For every request
that comes in, the web server has to create a new operating-system process. Load an interpreter
and script, execute the script, and then tare it all down again. This is very taxing for the server
and doesnt scale well when the amount of traffic increase.
Numerous CGI alternatives and enhancements, such as fast CGI, mod_perl from apache,
NSAPI from Netscape, ISAPI from Microsoft, and java sevlets from sun micro systems, have
been created over the years. While these solutions offer better performance and scalability, all
these technologies suffer from a common problem: they generate web pages embedding HTML
5

directly in programming language code. This pushes the creation of dynamic web pages
exclusively into the realm of programmers. Java server pages, however, changes all that.

4.2 HTML
HTML STANDS FOR hyper text markup language based on the standard generalized
markup language, which is used to design the general, structure of various kinds of documents. It
is page description language like neither postscript, nor it a language that can be easily generated
from your favorite page layout program.HTML by virtue of SGML heritage is a language for
describing structured documents. Now days designing and programming web pages on the
internet are very hot things where the pages designed with HTML. HTML is a system for making
of documents with informational tags that indicates how the documentation are linked together,
hyper text links are powerful.
HTML is a hot spot in the current situation though it is used for structuring the document
but also in the html markup scheme lies the power to create interactive, cross platform,
multimedia, client-server applications. This string of adjectives is not just hype, such systems do
exit and are called world wide web(www), lives on the internet providing organization to a wide
variety of resources as computers located around the globe. The web, also known as www, plays
a large part in continuous development of HTML, and the WEB will play a large part in the way
you write and structure HTML documents. The www represents the large possible audience for
your work. HTML is very hot track of today on internet because it is highly interactive.
Interactivity between web client and server is possible in HTML by filling the forms,
which are processed by CGI scripts, and is written in any languages. It means, we can include
JAVA, PERL, javascript, VBSCRIPT etc in HTML to make the pages still more powerful and
attractive.

4.2.1 HYPERLINKS
Hyperlinks play a major role in HTML, hyperlink is a link which when clicked takes you
to a screen where a more detailed information of that link will be available, hyperlink can even
point to a remote document, in the sense that it can point to a document, which resides in a
6

different directory. When the movement of the mouse looks like a palm with the finger pointing
upwards, it implies that it is a hyperlink.

4.2.2 Different ways of organizing the content on web sites


Effectively organizing the content can make difference between a web site that people put
on their favorite list and the one they leave in frustration of not being able to find what they
want. People commonly organize their pages according to hierarchical, linear or spider web link
structures.

4.2.3 OVERVIEW OF JDBC


JDBCTM is a JavaTM API for executing SQL statements. (As a point of interest, JDBC is a
trademarked name and is not an acronym; nevertheless, JDBC is often thought of as standing for
"Java Database Connectivity".) It consists of a set of classes and interfaces written in the Java
programming language. JDBC provides a standard API for tool/database developers and makes it
possible to write database applications using a pure Java API.
Using JDBC, it is easy to send SQL statements to virtually any relational database. In
other words, with the JDBC API, it isn't necessary to write one program to access a Sybase
database, another program to access an Oracle database, another program to access an Informix
database, and so on. One can write a single program using the JDBC API, and the program will
be able to send SQL statements to the appropriate database. And, with an application written in
the Java programming language, one also doesn't have to worry about writing different
applications to run on different platforms. The combination of Java and JDBC lets a programmer
write it once and run it anywhere.
Java being robust, secure, easy to use, easy to understand, and automatically
downloadable on a network, is an excellent language basis for database applications. What is
needed is a way for Java applications to talk to a variety of different databases. JDBC is the
mechanism for doing this.

JDBC extends what can be done in Java. For example, with Java and the JDBC API, it is
possible to publish a web page containing an applet that uses information obtained from a remote
database. Or an enterprise can use JDBC to connect all its employees (even if they are using a
conglomeration of Windows, Macintosh, and UNIX machines) to one or more internal databases
via an intranet. With more and more programmers using the Java programming language, the
need for easy database access from Java is continuing to grow.

4.2.4 THE JDBC DRIVERS


JDBC-ODBC Bridge plus ODBC driver
A JDBC-ODBC bridge provides JDBC API access via one or more ODBC drivers. Note that
some ODBC native code and in many cases native database client code must be loaded on each
client machine that uses this type of driver. Hence, this kind of driver is generally most
appropriate when automatic installation and downloading of a Java technology application is not
important.

4.2.5 Native API partly Java driver


A native-API partly Java technology-enabled driver converts JDBC calls into calls on the
client API for Oracle, Sybase, Informix, DB2, or other DBMS. Note that, like the bridge driver,
this style of driver requires that some binary code be loaded on each client machine.

4.3 JDBC-Net pure Java driver


A net-protocol fully Java technology-enabled driver translates JDBC API calls into a
DBMS-independent net protocol which is then translated to a DBMS protocol by a server. This
net server middleware is able to connect all of its Java technology-based clients to many different
databases. The specific protocol used depends on the vendor. In general, this is the most flexible
JDBC API alternative. It is likely that all vendors of this solution will provide products suitable
for Intranet use. In order for these products to also support Internet access they must handle the
additional requirements for security, access through firewalls, etc., that the Web imposes. Several

vendors are adding JDBC technology-based drivers to their existing database middleware
products.

4.3.1 Native protocol pure Java driver


A native-protocol fully Java technology-enabled driver converts JDBC technology calls
into the network protocol used by DBMSs directly. This allows a direct call from the client
machine to the DBMS server and is a practical solution for Intranet access. Since many of these
protocols are proprietary the database vendors themselves will be the primary source for this
style of driver. Several database vendors have these in progress.

4.3.2 CONNECTION
A connection object represents a connection with a database. A connection session
includes the SQL statements that are executed and the results that are returned over the
connection. A single application can have one or more connections with a single database, or it
can have connections with many different databases.

4.3.3 OPENING A CONNECTION


The standard way to establish a connection with a database is to call the method
DriverManager.getConnection. This method takes a string containing a URL. The Driver
Manager class, referred to a the JDBC management layer, attempts to locate a driver than can
connect to the database represented Driver classes, and when the method get Connection is
called, it checks with each driver in the list until it finds one that can connect uses this URL to
actually establish the connection.<Sub protocol>-usually the driver or the database connectivity
mechanism, which may be supported by one or more drivers. A prominent example of a sub
protocol name is oracle, which has been reserved for URLs that specify thin-style data
source names.
<Sub name>- a way to identify the database. The sub names can vary, depending on the
sub protocol, and it can have a sub name with any internal syntax the driver writer chooses. The
point of a sub name is to give enough information to locate the database.

4.3.4 SENDING STATEMENT


Once a connection is established, it is used to pass SQL statements to its underlying database.
JDBC does not put any restrictions on the kinds of SQL statements that can be sent; this provides
a great deal of flexibility, allowing the use of database-specific statements or even non-SQL
statements. It requires, however, that the user be responsible for making sure that the underlying
database can process the SQL statements being sent and suffer the consequences if it cannot.

4.3.5 DRIVER MANAGER


The Driver Manager class is the management layer of JDBC, working between the user and the
drivers. It keeps track of the drivers that are available and handles establishing a connection
between a database and the appropriate driver. It addition, the driver manager class attends to
things like driver login time limits and the printing of log and tracing messages. The only method
in this class that a general programmer needs to use directly is DriverManager.getConnection.
As its name implies, this method establishes a connection to a database.

4.4 OVERVIEW OF DATABASE


What is a Database?
A database is a collection of information that is organized so that it can easily be accessed,
managed, and updated. In one view, databases can be classified according to types of content:
bibliographic, full-text, numeric, and images.

4.4.1 Relational databases


A relational database matches data by using common characteristics found within the data
set. The resulting groups of data are organized and are much easier for people to understand. For
example, a data set containing all the real-estate transactions in a town can be grouped by the
year the transaction occurred; or it can be grouped by the sale price of the transaction; or it can
be grouped by the buyer's last name; and so on. Such a grouping uses the relational model (a
technical term for this is schema). Hence, such a database is called a "relational database."The
software used to do this grouping is called a relational database management system. The term
"relational database" often refers to this type of software. Relational databases are currently the
10

predominant choice in storing financial records, manufacturing and logistical information,


personnel data and much more.

4.4.2 Designing a Database


Database design is the process of producing a detailed data model of a database. This logical data
model contains all the needed logical and physical design choices and physical storage
parameters needed to generate a design in a Data Definition Language, which can then be used to
create a database. A fully attributed data model contains detailed attributes for each entity.

4.4.3 Steps followed in designing a database

Determine the purpose of your database.

Determine the tables you need in the database.


Determine the fields you need in the tables.
Identify fields with unique values.
Determine the relationships between tables.
Refine your design.
4.5 JAVASCRIPT
JavaScript is an object-oriented scripting language used to enable programmatic access to
objects within both the client application and other applications. It is primarily used in the form
of client-side JavaScript, implemented as an integrated component of the web browser, allowing
the development of enhanced user interfaces and dynamic websites. JavaScript is a dialect of the
ECMAScript standard and is characterized as a dynamic, weakly typed, prototype-based
language with first-class functions. JavaScript was influenced by many languages and was
designed to look like Java, but to be easier for non-programmers to work with.

5.SYSTEM DESIGN
11

5.1 USECASE DIAGRAM


Usecase diagram is a set of usecases, actors and their relationships. A more detailed
description might characterize a use case as

A pattern of behavior the system exhibits


A sequence of related transactions performed by an actor and the system
Delivering something of value to the actor
Use-case diagram depict the functionality of the system. The use case diagram has
the following types of elements.
1. Actor
2. Use-case
3. Association.
1) Actor:
Shown as a stickfigure icon. This represents users and external systems with which the
system we are discussing interacts.

2)Use-case
Shown as an ellipse. This represents a functional requirement that is described from the
perspective of the users of a system.

3)Association
Shown as a solid line path from an actor to use-case. This represents that the actor
uses the use-case.
12

Actor

use-case

Usecase diagram for Library Management System

LibraryDatabase

User

MaintainDatabase

BorrowBook

UserRegistration

ManageBook
Librarian
AddBook

NewUser

ReturnBook

FeedBack
DeleteBook

Staff

VIPUser

ReserveBook
SearchBook

UpdateBook

RequestForNewBook

Login

ReturnCD
HomeDelivery

ViewAllBooks
RenewalBook
Login
Student
RequestForVIPUser

5.2 SEQUENCE DIAGRAM

13

BorrowCD

Sequence diagram is an interaction diagram that emphasis the time ordering of


messages. Sequence diagram are isomorphoic, meaning that you can take one and transform it
into the other.
A horizontal axis shows elements involved in the interaction and the vertical axis
represents time proceeding down the page. The sequence diagram has following types of
elements.
1) Classes and objects
2) Lifeline
3) Communication between objects
1) Classes and objects
Classes are so much the same way as on class diagram. Objects may also be shown much
the same way as an object diagram.

2) Lifeline
Shown as a vertically dashed life from an element. This represents the existence of the
element over time.

3) Communication:
Shown as a horizontal solid arrow from the lifeline of the sender to the lifeline of the
receiver and labeled with the name of the operation to be invoked. This represents that sender
sends a message or stimulus to the receiver.

14

a) User Registration:

: user

Registration
Form

Registration

DataBase

1:Request Registration Form

2 :Details For Registration

3 :Give Details

4 :Register

5 :Update Registration

6 :Confirm Registration

15

b) Borrow a Book:

System
Interface

: user

Book List

User Account

Sign In
Check Valid or Not

Valid User ID

View Book List

Display Book List

Borrow Book With Title

Search Book

Check User Account


Verify Status

Recheck if Available
Book Not in Account
Issue the Book

16

17

c) Add a Book:

System
Interface

: user

Book List

Library
DataBase

Request for Login


check Valid or not

Valid User

Add Book with title


Check valid or not

Invalid Book Already existed

Add Book With Title


Check valid or not

Valid Book Adder

Update the DataBase

DataBase Updated

18

d) Return a Book:

19

System
Interface

: user

User Account

Sign In
Check Valid or not

Valid User

Return a Book
Check User Account
Check Valid or not

Return Valid

Update User Account

5.3 CLASS DIAGRAM

20

Class diagram shows a set of classes, interfaces, collaborations and their relationships. It
address the static design view of a system.Class diagram is used to display some of the classes
and packages in your system.Class diagrams help the developers see and plan the structure of the
system before the code is written helping to ensure that the system is well designed from the
beginning.
Generally, a class is rendered as rectangle, usually including its name, attributes and
operations.
Name

Attributes

Operations

A class is depicted on the class diagram as a rectangle with three horizontal sections. The
upper section shows the class's name; the middle section contains the class's attributes; and the
lower section contains the class's operations.
we use classes to capture the vocabulary of the system we are developing. These classes
may include abstractions that are part of the problem domain, as well as classes that make up an
implementation.

21

LibrarySystem
LibraryName : String
LibraryIncharge : Logical View : String
LibrarianName : String

+m_LibrarySystem

ViewLibraryDatabase()
ViewUsersList()
LibrarySystem()
1..*

+Need for

<<uses>>

+Works in

UsersDatabase
Name : String
Id : Number
Branch : String

Librarian
Qualification : String
LibrarianExperience : Integer
LibrarianID : Number
LibrarianPassword : String
UpdateBook() : Boolean
CheckDatabase()
AddBook()
DeleteBook()
Librarian()
Login()

Working()
NotWorking()
UsersDatabase()

AddBooks()
DeleteBook()
AddCDs()
DeleteCDS()
AddMagazines()
DeleteMagazines()
Database()

<<uses>>
+m_User
BookList
BookAuthor : String
BookId : Integer

User
UserName : String
UserID : Name
UserPassword : String

VIPUser

UpdateBook()
VIewBookList()
BookList()

Login()

RequestNewBook()
HomeDelivery()
BorrowCDs()
ReturnCDs()
VIPUser()

1..*

UpdateCDs()
ViewCDList()
CDList()
+Checks

BorrowBook

+Checks
Staff
Department : String
Designation : String

CDList
CDId : LogicalView : String
SoftwareName : String

1..*

NormalUser
Branch : String
NormalUser()

RequestForMoreBooks()
Staff()

Database

BookList()
CDList()

Student
Student()

BorrowCD
CDName : String
StaffName : String

1..*
+Borrows

CDList()

22

5.4 ACTIVITY DIAGRAM


An activity diagram is a special kind of state chart diagram that shows the flow from
activity to activity within a system. Activity diagrams address the dynamic view of a system.
They are especially important in modeling the functions of a system and emphasize the flow of
control among objects.
Activity diagram depicts the activities and responsibilities of elements. Activity diagram
have the following type of elements.

Action state
Control flow transition
Initial action state
Final action state
Object flow
Swimlane
Action state
Shown as a shape with straight top with bottom convex arc on two sides. This represents
processing.

Control flow transition


Shown as a solid line from source action state to target action state. This represents that
once the source action state completes its processing the target action state starts its processing.

Initial action state


Shown as a small solid filled circle, the control flow transition originating from the initial
state specifies the first action state.

23

Final action state


Shown as a circle surrounding a small solid filled circle (bulls eye) the control transition
to the final state specifies the final action state.

Object flow
Shown as a dashed arrow between an action state and an object. This represents that
action state inputs or outputs the object. An input object flow which points to an action state,
represents that the action state inputs the objects, an output object flow which points to an
objects, represents that the action state outputs the objects.

A swimlane
Shown as a visual region separated from neighboring swimlane by vertical solid lines on
both sides and labeled at the top with the element responsible for action state within swimlane.
This represents responsibility.

24

a) Activity diagram With Swimlanes

Student/Staff

[ borrower ]

[ returner ]

Library Staff

Book
Searching

Wait in
Queue

[ borrowing ]
Copying Book
Details

Preparefor
NextMember

25

CopyBook
Details

Rearrange
Book

b) Activity Diagram without swimlanes

26

Submit
Application

Issue
Membership
[ Reservation ]

BookBank

Issue
Books

Return
BooksinTime

[ Late Submission ]

CollectFine

[ else ]
Rearrange
Book

6.PSEUDO CODE
27

Validation.html
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<% Connection conn;
try
{
Class.forName("org.postgresql.Driver");
conn=DriverManager.getConnection("jdbc:postgresql://localhost/test","test","
");
//data retriving through html through getParameter method this method call through request
object....
String username=request.getParameter("username");
String password=request.getParameter("password");
//creating

statement

interface

object

through

connection

intreface

object

calling

createStatement() method ..........


Statement stmt=conn.createStatement();
//creating result set
ResultSet rs;
//here we retrive data through executeQuery method.hear we are calling executeQuery method
through statement object.after executing data will be store resultset object.
rs=stmt.executeQuery("select

from

admin

where

username='"+username+"'

and

password='"+password+"'");
//ADMIN CHECKING IF THE ABOVE INSTRUCTION EXECUTE SUCCESSFULLY THEN
RESULTSET OBJECT STORES DATA IF RESULTSET HAVING DATA THEN FOLLOWING
IF CONDITION EXECUTES OTHERVISE ELSE PART EXECUTE
if(rs.next())
{

28

//SESSION CREATION THROUGH GETSESSION METHOD.HERE WE ARE ENBLE


SESSION.
request.getSession(true);//creating new session
//SESSION ATTRIBUTE CREATION THROUGH setAttribute METHOD
session.setAttribute("username",username);
session.setAttribute("password",password);
%>
<jsp:forward page="admin3.jsp"/>
<%
}else{session.setAttribute("username",null);
session.setAttribute("password",null);
%>
<html><body bgcolor="gray">
<table border="0" width="500" lenth="500" align="center">
<tr>
<td><img src="isb9.bmp" width="740" height="200"></td>
</tr>
</table>
<jsp:forward page="login1.html"/>
</html></body>
<%
}
}
catch(Exception e)
{
out.println(e);
}
%>

29

7. IMPLEMENTATION

Implementation refers to the steps to be followed to run the project.

The very first step of the implementation process starts with the installation of JDK
Install the tomcat web server.
Copy the WAR file at the location C:program files/apache../web apps.
Start and stop the tomcat server.
Finally run the project by entering the hostname as http: localhost/8080/onlinein the address
column of the internet explorer.

8. TESTING

8.1 What is testing?

30

A process of executing a program with the explicit intention of finding errors, that is
making the program fail. Testing is the process of detecting errors. Testing performs a very
critical - role for quality assurance and for ensuring the reliability of software. The results of
testing are used later on during maintenance also.

8.2 Psychology of Testing


The aim of testing is often to demonstrate that a program works by showing that it has no
errors. The basic purpose of testing phase is to detect the errors that may be present in the
program. Hence one should not start testing it the intent of showing that a program works but the
intent should be to show that a program does not work. Testing is the process of executing a
program with the intent of finding errors.

8.3 Testing Objectives


The main objective of testing is to uncover a host of errors, systematically and with
minimum effort and time. Stating formally, we can say,
Testing is a process of executing a program with the intent of finding an error.
A successful test is one that uncovers an as yet discovered error.
A good test case is one that has a high probability of finding error, if it exists.
The tests are inadequate to detect possibly present errors.
The software more or les confirms to the quality and reliable standards.

8.4 Software Testing


It is the process of testing the functionality and correctness of a software by running it.A good
test case is the one that has a high probability of finding an as yet undiscovered error.A
successful test is one that uncovers an as yet undiscovered error. Software testing is usually
performed for one of the two reasons.
31

Defect detection.
Reliability estimation.

8.5 Black Box Testing


Black Box Testing is not a type of testing; it instead is a testing strategy, which does not
need any knowledge of internal design or code etc. As the name "black box" suggests, no
knowledge of internal logic or code structure is required. The types of testing under this strategy
are totally based/focused on the testing for requirements and functionality of the work
product/software application. Black box testing is sometimes also called as "Opaque Testing",
Functional/Behavioral Testing" and "Closed Box Testing".

8.6 White Box Testing


White box testing is a security testing method that can be used to validate whether code
implementation follows intended design, to validate implemented security functionality, and to
uncover exploitable vulnerabilities White box testing is performed based on the knowledge of
how the system is implemented. White box testing includes analyzing data flow, control flow,
information flow, coding practices, and exception and error handling within the system to test the
intended and unintended software behavior. White box testing can be performed to validate
whether code implementation follows intended design, to validate implemented security
functionality, and to uncover exploitable vulnerabilities.

9. SNAPSHOTS

32

33

34

35

36

37

10. CONCLUSION
38

Library Management System gives a solution to the present scenario using in maintaining
the Library. This gives flexibility fast accessing to the details of the book and this project also
gives better security to the administrator in maintaining the Library. As the database is updated
form time to time the administrator can also check for the books that are missing in the library
very easily. This project also calculates the fine that has to be paid by the user, until and unless
the fine was not paid he cannot be able to take any other book form the library. These all
advantages brings this library management system a better solution for the current scenario.

11. BIBILIOGRAPHY
39

Books Referred

Java Complete Reference --- Patric Naughton, Herbert Schildt

Java How to program --- Dietel & Dietel

Servlet Programming --- ORelly

Software Engineering --- Pressman

Website Browsed

www.rationalrose.net

www.itouch.com

http://en.wikipedia.org/wiki/JavaScript

http://developers.sun.com/product/jdbc/drivers

40

Das könnte Ihnen auch gefallen