You are on page 1of 76

CONTENTS

1. 2.
ORGANISAION PROFILE INTRODUCTION 2.1 SYNOPSIS 2.2 OVERVIEW OF PROJECT. SYSTEM ST
UDY 3.1 PROBLEM DEFINITION 3.2 SOFTWARE REQUIREMENTS 3.3 HARDWARE REQUIREMENTS C
ONCEPTS & TECHNIQUES SYSTEM ANALYSIS
3.
4. 5.
6. DESIGN SPECIFICATION 6.1 TABLES 6.2 CONTEXT DIAGRAM 6.3 DATAFLOW DIAGRAMS 7.
8. 9. 10. 11. SYSTEM SPECIFICATION SCREENS RE SULTS AND ADVANTAGES CONCLUSION BI
BLIOGRAPHY
INTRODUCTION
SYNOPSIS
The Project entitled "ONLINE SHOPPING" is a web-based application Software devel
oped in JAVA LANGUAGE using Java as front end on Pentium machine. The main aim o
f "ONLINE SHOPPING" is to improve the services of Customers and vendors. It main
tains the details of customer payments, product receipts, addition of new custom
ers, products and also updating, deletion for the same. It also stores the detai
ls of invoices generated by customer and payments made by them with all Payments
details like credit card. The primary features of the project entitled "ONLINE
SHOPPING" are high accuracy, design flexibility and easy availability. And also
it uses database tables Representing entities and relationships between entities
.
OVERVIEW OF ONLINE SHOPPING
The central concept of the application is to allow the customer to shop virtuall
y using the Internet and allow customers to buy the items and articles of their
desire from the store. The information pertaining to the products are stores on
an RDBMS at the server side (store). The Server process the customers and the it
ems are shipped to the address submitted by them. The application was designed i
nto two modules first Os for the customers who wish to buy the articles. Second
is for the storekeepers who maintains and updates the information pertaining to
the articles and those of the customers? The end user of this product is a depar
tmental store where the application is hosted on the web and the administrator m
aintains the database. The application which is deployed at the customer databas
e, the details of the items are brought forward from the database for the custom
er view based on the selection through the menu and the database of all the prod
ucts are updated at the end of each transaction. Data entry into the application
can be done through various screens designed for various levels of users. Once
the authorized personnel feed the relevant data into the system, several reports
could be generated as per the security.
PROBLEM DEFINITION
PROBLEM DEFINITION
To develop a web-based application to improve the service to the customers and m
erchant which in turn increases the sales and profit in "ONLINE SHOPPING"
GOALS FOR THE SYSTEM AND THE PROJECT
The system is capable of maintaining details of various customers, vendors, Prod
ucts and storing all the day to day transactions such as generation of shipment
address bills, handling customers and product receipts, updating of stores.
CONSTRAINTS ON THE SYSTEM AND THE PROJECT
ONLINE SHOPPING is developed in Java 1.2.2 using Java as front end and it could
run only on Java 1.2 and onward versions.
HARDWARE AND SOFTWARE REQUIREMENTS
HARDWARE
:
PENTIUM SERVER with Network Of 586 Dx4 300Mhz. 8.3 GB HDD 64MB RAM. JDK1.2.2,JAV
ASERVER 1.1.3, SQL SERVER ODBC. : WINDOWS NT.
SOFTWARE
:
OPERATING SYSTEM
CONCEPTS AND TECHNIQUES
The Java Packages
Eight packages comprise the standard Java development environment.
The Java Language Package
The Java language package, also known as java.lang, contains classes that are co
re to the Java language. The classes in this package are grouped as follows: Obj
ect The granddaddy of all classes--the class from which all others inherit. Data
Type Wrappers A collection of classes used to wrap variables of a primitive dat
a type: Boolean, Character, and Double, Float Integer and Long. Strings Two clas
ses that implement character data. The String and String Buffer Classes is a tho
rough lesson on the use of both types of strings. System and Runtime These two c
lasses provide let your
programs use system resources. System provides a system-independent programming
interface to system resources and Runtime gives you direct system-specific acces
s to the runtime environment. Using System Resources Describes both the System a
nd Runtime classes and their methods. Threads The Thread, Thread Death and Threa
d Group classes supplement the multi-threading capabilities so important to the
Java language. The java.lang package also defines the runnable interface. Runnab
le makes it convenient for Java class to be active without sub classing the Thre
ad class. Through an example-oriented approach Threads of Control will teach you
about Java threads. Classes The Class provides a runtime description of a class
and the Class Loader class allows you to load classes into your program during
runtime. Math The Math class provides a library of math routines and values such
as pi. Exception, Error, and Throwable When an error occurs in a Java program,
the program throws an object, which indicates what the problem was and the state
of the interpreter when the error occurred. Only objects that derive from the t
hrowable class can be thrown. There are two main subclasses of Throwable: Except
ion and Error. Exceptions are
a form of Throwable that "normal" programs may try to catch. Errors are used for
more catastrophic errors--normal programs should not catch errors. The java.lan
g package contains the Throwable, Exception, and Error classes, and numerous Sub
classes of Exception and Error that represent specific Problems. Handling Error
Using Exceptions shows you how to use exceptions in your Java programs to handle
errors. Process Process objects represent the system process that is created wh
en you use Runtime to execute system commands. The java.lang Packages defines an
d implements the generic Process class. The compiler automatically imports this
package for you. No other packages are automatically imported. The Java I/O Pack
age The Java I/O Package (java.io) provides a set of input and Output streams us
ed to read and write data to files or other Input and output sources. The classe
s and interfaces defined In java.io are covered fully in Input and Output Stream
s. The Java Utility Package This Java package, java.util, contains a collection
of utility classes. Among them are several generic data structures (Dictionary,
Stack, Vector, and Hash table) a useful object for tokenizing a string and anoth
er for manipulating calendar dates.
The java.util package also contains the Observer interface and Observable class,
which allow objects to notify one another when they change. The java.util class
es aren't covered separately in this tutorial although some examples use these c
lasses. The Java Networking Package The java.net package contains classes and in
terface definitions that implement various networking capabilities. The Classes
in this package include a class that implement a URL, a connection to a URL, a s
ocket connection, and a datagram packet. You can use these classes to implement
clientserver applications and other networking communication applications. Custo
m Networking and Security has several examples using these classes, including a
client-server example and an example that uses datagrams. The Applet Package Thi
s package contains the Applet class -the class that you must subclass if you're
writing an applet. Included in this Package is the Audio Clip interface which pr
ovides a very high level abstraction of audio. Writing Applets explains the ins
and outs of developing your own applets. The Abstract Window Toolkit Packages Th
ree packages comprise the Abstract Window Toolkit: Java.awt, java.awt.image, and
java.awt.peer. AWT Package
The java.awt package provides graphical user interface (GUI) elements that are u
sed to get input from and display information to the user. These elements includ
e windows, buttons, scrollbars, and text items. AWT Image Package The java.awt.i
mage package contains classes and interfaces for managing image data, such as se
tting the color model, cropping, color filtering, setting pixel values, and grab
bing snapshots of the screen. AWT Peer Package The java.awt.peer package contain
s classes and interfaces that connect platformindependent AWT components to thei
r platformdependent implementation (such as Motif widgets or Microsoft Windows c
ontrols). Creating a User Interface covers all three of the AWT packages.
FEATURES OF JAVA

Distributed
Java has an extensive library of routines for coping with TCP/IP protocols like
HTTP and FTP Java applications can open and access across the Net via URLs with
the same ease as when accessing local file system. We have found the networking
capabilities of Java to be both strong and easy to use. Anyone who has tries to
do Internet programming using another language will revel. How simple Java makes
onerous tasks will like opening a socket connection. • Robust Java is intended fo
r writing programs that must be readable in a Variety ways. Java puts a lot of e
mphasis on early checking for possible problems, later dynamic checking, and eli
minating situations that are error prone... The single biggest difference betwee
n Java has a pointer model that eliminates the possibility of overwriting memory
and corrupting data. The Java compiler detects many problems that in other lang
uages would only show up at runtime. As for the second point, anyone who has spe
nt hours chasing a memory leak cost by a printer bug will be very happy
with this feature of Java. Java gives you the best of both worlds. You need not
pointers for everyday constructs like string and arrays. You have the power of p
ointers if you need it, for example, for like lists. And you have always-complet
e safety, Since you can never access a bad pointer or make memory allocation err
ors. Java is intended to be used in networked/distributed environment toward tha
t end; a lot of emphasis has been placed on security. Java enables the contracti
on of virus-free, temper-free systems. Here is a sample of what Java’s security fe
atures are supposed to keep a Java programming from doing: 1. Overrunning the ru
ntime stack. 2. Corrupting space. memory outside its own process Secure
3. Reading or writing local files when invoked through a security-conscious clas
s loader like Web browser. Architecture Neutral The compiler generates an archit
ecture neutral object file format- the compiled code is executable on many proce
ssors, given the presence of Java runtime system...The Java compiler does this b
y generating byte code instructions which have nothing to do with a particular c
omputer architecture. Rather they ere designed to be both easy to any machine an
d easily translated into native machine code on the fly. Twenty years ago, the U
CSD Pascal system did the
same thing in a commercial product and, even before that, Nicholas Worth’s origina
l implementation of Pascal used the same approach. By using bytecodes, performan
ce takes major hit. The designers of Java did an excellent job developing a byte
code instruction set those workers well on today’s most common computer architect
ures. And the codes have been designed to translate easily into actual machine i
nstructions. Portable Unlike C and C++, they are no "implementation dependent" a
spects of the specifications. The sizes of the primitive’s data types are specifie
d, as is the behavior of arithmetic on them. For example, an int in Java is alwa
ys a 32-bit integer. In C/C++, int can mean a 16-bit integer, a 32-bit integer,
or any size the compiler vendor likes. The only restriction is that it must have
at least as many bytes int and cannot have more bytes than a long int. The libr
aries that are a part of the system define portable interfaces. For example, the
re is an abstract window class and implementations of it UNIX, Windows, and the
Macintosh. Interpreted The Java interpreters can execute Java byte codes directl
y on any machine to which the interpreter has been ported. Since linking is a mo
re incremental and lightweight process, the development process can be much more
rapid and explanatory. One problem is that the JDK is fairly slow at compiling
your source code to the bytecodes that will, ultimately, be interpreted in the
current version. High Performance While the performance of interpreted bytecodes
is usually more than adequate, there are situations higher performance is requi
red. The bytecodes can be translated on fly into machine code for the particular
CPU the application is running on. Native code compilers for Java are not yet g
enerally available. Instead there are just-intime (jit) compilers. These work by
compiling the byte codes Into native code once, caching the results, and the ca
lling them again, if needed. This speeds up code once, catching the results, and
calling them again, if needed. This speed up the loop tremendously since once h
as to do the interpretation only once. Although still slightly slower than a tru
e native code compiler, just-intime compilers can give you a 10-or even 20-fold
speedup for some programs and will almost always be significantly faster than th
e Java Interpreter. Multithreaded In a number of ways, Java is more dynamic lang
uage than C or C++. It was designed to adapt to an evolving environment. Librari
es can freely add new methods and instance variables without any effect on their
clients.... In Java, finding out run time type information is straightforward.
This is an important feature in those situations where code needs to be added to
a running program. A prime example is code that is downloaded from the Internet
to run in browser.
PARADIGM OF JAVA
Java as a programming language evolved keeping in view certain criteria and feat
ures. It was built around a model that had these features. Some of the features
of this model we have seen like the object oriented, architecture neutral, robus
t, secure etc. Some additional features are explaining below
Dynamic downloading of applets- Applets should be downloadable on to a client ma
chine as and when required. Elimination of fatter phenomenon - Java based produc
ts could eliminate these by giving the users only those features of a product th
at the user needs at a time. The remaining features of a product can remain on t
he server itself.
Supports Networks centric computing- Java should be able to support low cost Net
work computers. Supports CORBA& DCOM-Java supports Common Object Request Broken
Architecture (CORBA) and Distributed Common Object Model (DCOM). This ensures th
at certain standards for object Programming are net. Supports Active X also.
JAVA APPLETS
Applets are a common way of writing Java applications. Integrating web based sou
nd and graphics into applications is simplified by using methods in Applet class
. Applets are essentially program that run from within a browser. They appear as
part of HTML documents
in the same way that pictures are presented. The major difference is that instea
d of a static graphics, the Java Applet is a complete running program. An Applet
is just like a widow application, but without a classic window frame. The range
of programs that can be written as an APPLET are reduced because of security li
mitations imposed by the target browser. Applets run only from with in Java-Enab
led browsers such as NETSCAPE, hot Java, and INTERNET EXPLOSER. ADVANTAGES OF AP
PLETS: There are several advantages using Applets. The most obvious is that you
only need one copy of your production class files on an HTML server. This reduce
s the nightmare of distributing and installing software by the tape or disk. Int
ernet and Intranet based software also reduces the problems of LAN accesses to s
oftware instead of accessing a disk by way of a network-mounted disk. Files are
accessed through http and FTP. WEB pages can also be used as a method of present
ing help to your users as well as keeping them informed about the latest changes
to your programs. This enables due to keep in constant touch your users. DISADV
ANTAGES OF APPLET: Running your application from a web browser is not necessaril
y a good thing. Target users must be running a version of web browser that suppo
rts that Java. It also helps if uses have an Internet connection of 28.8 k or hi
gher on relatively fast computers. Another large problem is local file access. I
f the applet was loaded from an http server, no local files can be read or writt
en to on the client machines. Loading the applet from the users local disk stora
ge can alleviate this, but this defeats any
WindowComponent Frame Object Container
Panel Applet
of the web-based earlier.
applet
advantages
mention
Applets have reduced network access. If an applet is loaded from networked machi
ne. Only that machine can be communicated with a via a socket connection this pr
events the applet from communicating to other machines on web. This security res
triction is alleviated if the applet is loaded from the users local disk.
Any Java based graphical application can be easily converted into an applet. Thi
s id because both frame and applet are executed from the container class.
APPLET LIFE CYCLE: There are four methods framework to build the applet that giv
e the
Init () Start () Stop () Destroy () Init (): - Used for initial setup such as de
fining Layout, passing parameters and other initializations. Start (): - This is
called immediately after init () start () is called each time user return to th
e pea or when the page is deconified. Unlike start, init is called only once. St
op (): - This method is called when the user moves off the page on which the App
let sits or when it is iconified. If an applet if not doing time consuming activ
ities like performing animation, this need not be implemented. Destroy (): - Thi
s method is called when the browser shuts down. It is used to re-claim resources
. JAVA VS C++: The syntax of Java looks very much like C+ +. Compared to c++, Ja
va used similar syntax for if and loops structures. The notion of a constructor
is all very similar to what C++ has. The following are some of the differences o
f Java over C++. If you understand these differences you will see why Java is su
ch a beneficial programming language. •Compare to C++ Java runs 20 times because o
f platform independents. •Every thing must be in a class. global functions or glob
al data. slower
There are no If you want
the equivalent of global, make static methods and static data within a class. Th
ere are no structures or enumeration or unions. Only class. •The Char type uses th
e international 16-bit. Unicode character set, so it can automatically represent
most national characters. • All non-primitive types can only be created using new
. All primitive types can only be created directly, without new. There are wrapp
er classes for all primitive classes so you can create equivalent heap-based obj
ects with new •Java has no Preprocessors. If you want to use classes in another li
brary, you say import and the name of the library. There are no preprocessor-lik
e macros. •There are no Java pointers in the sense of C and C++. When you create a
n object with new, you get back a reference. For example String s = new String (
"peers"); •Java has no templates or other implementation of parameterized types. T
here is a set of containers : Vectors, stacks and Hash table that hold object re
ferences, and through which you can satisfy your container needs, but these cont
ainers are not designed for efficiently like the C++ standard template library(S
TL) •Java has built-in support for comment document action, so the source code fil
e can also contain its own documentation, which is stripped out and reformatted
into HTML using an apart program. This is boon for documentation maintenance and
use. •Java has standard libraries for solving specific tasks. C++ relies on non-s
tandard
third-party libraries.
These tasks include
-
Networking Database Connection (via JDBC) Multithreading Distributed Objects (vi
a RMI and CORBA) Compression Commerce
The availability and standard nature of these libraries allow for more rapid app
lication development. •Generally, Java is more robust, via •Object handles initializ
ed to null •Handles are always checked and exceptions are thrown for failure •all ar
ray accesses are checked for bounds violations •Automatic garbage collection preve
nts memory leaks •Clean, relatively fool-proof exception handling •bytecodes verific
ation of network applets
INTRODUCTION TO JDBC
What is JDBC and Why JDBC? JDBC (Java Database Connectivity) is a front-tool for
connecting to a server and is similar to ODBC in the respect. However, JDBC can
connect only Java clients and uses ODBC for the connectivity. JDBC is essential
ly a lowlevel Application, Programming Interface. It is called a low-level API s
ince any data
manipulation, storage and retrieval has to be done by the program itself. Some t
ools that provide a higher level abstraction are expected shortly. JDBC Driver t
ypes: There are four types of JDBC drivers each having its own functionality. Pl
ease note that, they do not substitute one another, each having their own suitab
ility aspects. They are classified based on how they access data from the databa
se. 1.Native Jdbc driver: A JDBC driver, which is partly written in Java and mos
t of each, implemented using native methods to access the database. This is usef
ul in case of Java application that can run only on some specific platforms. Wri
ting these type drivers is easier compare to writing other drivers 2. All Java J
DBC Net Drivers: A JDBC net drivers which uses a common network protocol to conn
ect to an intermediate server, which is turn employees native calls to connect t
o the data base. This approach is used for applets where the request must go thr
ough the intermediate server. 3. JDBC-ODBC bridge driver: A bridge driver provid
ed with JDBC can convert. The Jdbc calls in to equaling ODBC calls using the nat
ive methods. Since ODBC provides for connection to any type of database that is
ODBC compliant, to connect a number of databases simultaneously, it is very simp
le matter. This approach is a recommended once since using ODBC drivers, which a
re industry standard as of now, would make an application truly portable across
the databases.
JDBC Native Driver
JDBC Application ODBC Driver Manager ODBC Bridge DRIVER
JDBC
JDBC NET
Native Protocol Jdbc driver
4. Native Protocol ALL Java Drivers: This type of Jdbc driver is written complet
ely in Java and can access the database by making use of native protocols of the
database. This method of data access is suitable in case of Intranets were carr
y every thing can run as an application instead of an applet.
JDBC ARCHITECTURE: JDBC architecture Components of JDBC are 1. JDBC Driver Manag
er 2. JDBC Driver 3. JDB-ODBC Bridge 4. Applications. is shown below.
Uses Native Calls to
uses special Uses native net protocols net protocols
Access The data to accessthe to access the base database database
DATA BASE
JDBC Driver Manager: - Function of the driver manager is to findout available dr
ivers in the system and connects the application to the appropriate database. Wh
enever a connection is requested. However, to help the driver manager identify d
ifferent types of drivers, each driver should be registered with the driver Mana
ger. JDBC Driver: - Function of the JDBC Driver is to accept the SQL calls from
the application and convert them into native calls to the database. However, in
this process it may take help some other drivers or even servers, which depends
on the type of Jdbc Driver we are using. Also, it is possible that the total fun
ctionality of the database server could be built into the driver itself. JDBC-OD
BC Bridge: Sunsoft provides a special JDBC Driver called JDBC-ODBC bridge driver
, which can be used to connect to any existing database, that is ODBC complaint.
APPLICATION:
Application is a Java Program that needs the information to be modified in
some database information.
or
wants
to
retrieve
the
SERVLETS:
Client and Servers To understand the World Wide Web and Server Side programming
must understand the division between Web clients and Web servers and how HTTP fa
cilities the interaction between the two. Putting in simple words, a server hand
les request from various clients. For example, suppose you are using a word proc
essing program to edit files on another compute. Your computer would be the clie
nt because it is requesting the files from another computer. The other computer
would be the server because it is handling your computer s request. With network
ed computers, clients and servers are very common. A server typically runs on a
different machine than the client, although this not always the case. The intera
ction between the two usually begins on the client side. The client software req
uest an object or transaction from the server software, which either handles the
request an object or transaction from the server software, which either handles
the request or denies it. If the request is handled, the object is sent back to
the client software. On the World Wide Web
server are known as webservers, and clients are known as Webbrowsers. Web browse
r’s request documents from web servers, allowing you to view documents on the Worl
d Wide Web. Some of the most common browsers are Netscape Navigator, Internet Ex
plorer, and NCA s Mosaic. Like most software companies that distribute Web Brows
ers, these companies also distribute Web server software (in our case we uses JW
S Java Web Browser). The process of viewing a document on the web starts when a
web browser sends a request to web server in http request headers. The Web serve
r receives and views the http request headers for any relevant information, such
as the name of the file being requested, and sends back the file with HTTP resp
onse headers. The web browser then uses the HTTP response headers to determine h
ow to display the file or data being returned by the web server. In the case of
Servlets we would refer to a URL with a default port at 8080. If the above said
server are Java Enabled Web Severs. HTTP is defaulted at port 80 and in case of
Servlets it is defaulted at 8080 that could be changed. WHY USE SERVLETS? You ma
y have noticed that the preceding CGI example could just as easily been a simple
HTML file. In fact, you don t gain advantage from making it a server side scrip
t. So why use any server side scripting? Well, for the preceding example, you wo
uldn t. It is just a simple example CGI script. As you learn Servlets, however,
you will see that it allows you to extend the functionality of Web documents to
produce dynamic and interactive pages. 1.An Invitation to Servlets: This session
provides answer to the questions "What is Servlets" shows typical uses for Serv
lets. It also gives a quick introduction to
HTTP and its implementation in the HttpSetvlet class. What is Servlets? Servlets
are modules of Java code that run in a server application to answer client requ
ests. Servlets are not tied to a specific clientserver protocol but they are mos
t commonly used with Http and the word "SERVLET" is often used in the meaning of
"HTTP Servlets". Servlets make use of the Java standard extension classes in th
e packages javax.servlet and javax.servlet.http (extension of the Servlets frame
work for Servlets that answer HTTP requests). Since Servlets are written in the
highly portable Java Language and follow a standard framework, they provide a me
ans to create server extensions in a server and operating system independent way
. Typical uses for HTTP Servlets include: •Processing and/or storing data submitte
d an HTML form. •Providing synergic content, e.g. returning the results of a datab
ase query to the client. •Managing state information on top of the stateless HTTP,
e.g. for an online shopping chart system which manages shopping charts for many
concurrent customers and maps every request to the right customer. The Servlet
Environment: Inter-Servlet communication The inter Servlet communication method
which is described in this section can only be used with Servlet engines which i
mplement version 1.0 or 2.0 of the Servlet API. It will not work with Servlet en
gines, which comply strictly, to version 2.1
Servlets are not alone in a web server. They have access to other Servlets in th
e same Servlet context (usually a Servlet directory), represented by an instance
of javax.servlet.servletContext. The Servlet Context is available through the S
ervlet Config object s get Servlet context method. A Servlet can get a list of a
ll othg3r Servlets in the Servlet context by calling get Servlet Names on the Se
rvlet Context object. A Servlet for a known name (probably obtained through getS
ervletNames) is returned by getServlet. Note that this method can throw a Servle
tException because it may need to load and initialize the requested ServletExcep
tion if this was not already done. After obtaining the reference to another Serv
let that Servlets methods can be called. Methods, which are not declared in java
x.servlet.Servelet but in a subclass thereof can, called by casting the returned
object to the required class type. Note that in Java the identity of a class is
not only defined by the class name but also by the Class Loader by which it was
loaded. Web servers usually load each Servlet with a different class loader. Th
is is necessary to reload Servlets on the fly because single classes cannot be r
eplaced in the running JVM. Only a classloader object with all loaded classes ca
n be replaced. This means that classes, which are loaded by a Servlet class load
er, cannot be used for inter-Servlet communication. A class literal FooServlet (
as used in a type cast like "FooServlet foo ((FooServlet) context.getServlet ("F
ooServlet")") which is used in class BarServlet is different from the class lite
ral FooServlet as used in FooServlet
itself. A way to overcome 5this problem is using a supercalss or and interface w
hich is loaded by the system loader and thus shared by all Servlets. In a Web Se
rver, which is written in Java, these classes are usually located in the class p
ath (as defined by the CLASSPATH environment variable) Sharing Data between Serv
lets Version 2.1 of the Servlet API offers a new way of sharing named objects be
tween all the Servlets in a Servlets in Servlet context (and also other contexts
, as you’ll see below) by binding the objects to the ServletContext object which i
s shared by several Servlets. The ServletContext class has several for accessing
the shared objects: methods
Public void setAttributes (string name, Object) adds a new object or replaces an
old object by the specified name. The attribute name should follow the same nam
ing convention as a package name (e.g. a Servlet com.foo.fooservlet could have a
n attribute com.foo.fooservlet.bar). Just like a custom ServletRequest attribute
an object which is stored as a ServletContext attribute should also be serializ
able to allow attributes to be shared by Servlets which are running in different
JVMS on different machines in a load balancing server environment. Public Objec
t getAtributes (String name) returns the name object or null if the attribute do
es not exist. In addition to the user-defined attributes there may also be prede
fined attributes, which
are specific to the Servlet engine and provide additional information about a Se
rvlet (Context) environment. Public environment getAtributes name () returns an
Enumeration of the names of all available attributes. Public void remove Attribu
te (String name) removes the attributes with the specified name if it exists. Th
e separation of Servlets into Servlet contexts depends on the Servlet engine. Th
e Servlet Context objects of a Servlet with a known local URL can be retrieved w
ith the method public Servlet Context getContext (String unipath) of the Servlet
s own Servlet Context. This method returns null if there is no Servlet for the s
pecified path or if this Servlet is not allowed to get the Servlet Context for t
he specified path due to security restrictions. Compiling Servlets Servlets can
be compiled with the JDK and other Java compilers, just like Applets and Applica
tions. If the Servlet packages javax.servlet and javax.servlet.http are not incl
uded with the compiler or your Servlet engine you have to install them separatel
y by downloading the JSDK (Java Servlet Development Kit) and including the JSDK
classes in your CLASSPATH environment variable. They can also be worked out with
Java Web Server. Both JSDK and JWS follow the same rules, except for JSDK provi
ding supporting for the other servers like IIS and other third party vendors.
Introduction to world wide web Internet: The Internet is a network. Its consists
of thousands of interconnected networks consisting of different types of comput
ers. It is the worldwide access to people and information. The internet stemmed
from the concept of universal database: data that would not only be accessible t
o people around the world, but information that would link easily to others piec
es of information so that the relevant data can be quickly found by a user. In 1
960s this was explored revolution all aspects of human-information interaction.
The Internet first began in 1969 when the United States Department of Defense re
searched ways of communication via decentralized computer networks. After that c
omputers in government and universities were voluntarily linked. This quickly sp
read to other institutions around the world where today there are an estimated 2
0 million computers linked together. UNDERSTANDING INTERNET A network in which c
omputers are connected using cables or some other direct media are said to be in
LAN. When a group of LAN s are connected together they are called Wan’s. These Wa
n s are connected via telephone line, satellite links etc. Importantly these LAN
s are connected to form Wan’s through special computers called Routers. The job o
f a Router is to provide a link from one network to other where networks can be
LAN’s to form Wan’s to become even larger Wan s.
HARDWARE REQUIREMENTS: If Internet being accessed through a telephone line Then
we need •A computer with minimum requirements •A modem •A telephone Taking a first iss
ue of computers with minimum requirements may put everyone wondering what could
be the requirements? It would be safe enough to use the 486 or higher processors
for a computer to be fast enough with at least 16MB to 64MB MEMORY.
INTRODUCTION TO HTML
WHAT IS World Wide Web? The World Wide Web is a network of information resources
. The web realize on three mechanism to make the resources readily available to
the widest possible audience: 1. A Uniform name is scheme for resources on the w
eb (E.g.: - URLs) locating
2. Protocols, for access to named resources over the web (E.g.: - http). 3. Hype
rtext, for easy resources (E.g.: - HTML) navigation among
The ties between the three mechanisms are
apparent throughout this specification. Introduction to URLs Every resource avai
lable on the web-TML document, image, video clips, program, etc. Has an address
that may be an encoded by a Uniform Resource Locator, or "URL" URLs typically co
nsist of three pieces: 1. The naming scheme of the mechanism used to access the
resource. 2. The name resource. of the machine hosting the
3. The name of the resource itself, given as a path. Consider the URL that desig
nates current html specification: http://www.w3.org//TR/Pr-html4/cover.html This
URL may be read as follows: They’re a document available via an http protocol, re
siding on the machine www.w3.org Accessible Via the path" TR/Prhtml4/cover.html"
. Other schemes you may see in HTML documents include "mailto " for E-mail and F
TP for FTP. Here is another example if a URL. • This one refers to a User s mailbo
x: This is text.... For all comments, please send E-mail to <A href="mailto:Joe@
omeplace.com> JoeCool</a>. Fragment Identifiers the
Some URLs refer to a location within a resource. This kind of URL ends with "#"
followed by an anchor identifier (called the "fragment identifier"). Relative UR
Ls A relative URL doesn t contain any naming scheme information. Its path genera
lly refers to a resource on the same on the same machine as the current document
. Relative URLs may contain relative path components (".." means one level up in
the hierarchy defined by the path), and may contain fragment identifiers. Relat
ive URLs are resolved to full URLs using a base URL. As an example of relative U
RL resolution, assume we have the base URL http://www.ame.com/support/intro.html
. The relative URL in the following markup for a hypertext link: <A href="suppli
es.html"> Supplies </a> In HTML, URLs play a role in these situations: •Linking to
another document or resource. •Linking to an external style sheet for inclusion i
n a page. •Images objects and applets for inclusion in a page. •Image maps. •Form subm
ission •Frames •Citing an external reference. •Referring to metadata conventions descr
ibing a document. What is HTML?
To publish information for global distribution, one needs a universally understo
od language, a kind of publishing mother tongue that all computers may potential
ly understand. The publishing language used by the World Web is HTML (from Hyper
TextMarkupLanguage). HTML gives authors the means to: Publish online documents w
ith headings, text, tables, lists, photos, etc. Retrieve online information via
hypertext links, at the click of a button. Design forms for conducting transacti
on with remote services, for use in searching for information, making reservatio
ns, ordering products, etc.
Include spreadsheets, video clips, sound clip, and other applications directly i
n their documents. A brief History of HTML HTML was originally developed by Tim
Berners-Lee while at CERN, and popularized by the Mosaic browser developed at NC
SA. During the course of the 1990s it has blossomed with the explosive growth of
the Web. During this time, HTML has been extended in a number of ways. The Web
depends on Web page others and vendors sharing the same conventions for HTML. Th
is has motivated joint work on specification for HTML. HTML 2.0 (November 1995)
was developed under the aegis of the Internet Engineering Task Force (IETF) to c
odify common practice in late 1994. HTML+(1993) and [HTML 3.0] (1995)
proposed much richer versions of HTML.Despite never receiving consensus in stand
ard discussions, these drafts led to the adoption of a range of new features. Th
e efforts of the World Wide Web Consortium’s Html working group to codify common p
ractice in 1996 resulted in HTML 3.2(January 1997). Most people agree that HTML
documents should work well across different browsers and platforms. Achieving in
teroperability lowers costs to content provides since that must develop only one
version of a document. If the effort is not made, there is much greater risk th
at the Web will evolve into a proprietary world of incompatible formats, ultimat
ely reducing the Web s commercial potential for all participants. HTML has been
developed with the vision that all manner of devices should be able to use infor
mation on the Web; PCs with graphics displays of varying resolution and color de
pths, cellular telephones, hand held devices, devices for speech for output and
input, computers with high or low bandwidth, and so on. HTML 4.0 HTML 4.0 extend
s HTML with mechanism for style sheets, scripting, frames, embedding objects, im
proved support for right to left and mixed direction text, richer tables, and en
hancements to forms, offering improved accessibility for people with disabilitie
s. Internalization This version of HTML has been designed with the help of exper
ts in the field of international -libation, so that document may be written in e
very language and web transported easily
around the world. This has been accomplished by incorporating [RFC2070], which d
eals with the internationalization of HTML. One important step has been the adop
tion of the ISO? IEC: 10646 Standard (ISO10646) as the document character set fo
r HTML. This is the world s most inclusive standard dealing with issues of the r
epresentation of international characters, test direction, punctuation, and othe
r world language issues. HTML now offers greater support for diverse human langu
ages within a document. This allows for more effective indexing of documents for
search engines, higher-quality typography, better text-to-text-speech conversio
n, correct hyphenation, etc.
Accessibility As the Web community grows and its members diversify in their abil
ities and skills, it is crucial that the underlying technologies be appropriate
to their specific needs. HTML has been designed to make Web pages more accessibl
e to those with physical limitations. HTML 4.0 developments in the area of acces
sibility include: Encouraging the use of style sheets to achieve layout effect.
Making it easier to provide descriptions of images for browsers. Providing label
s for form fields. alternate non-visual
Providing labeled hierarchical groupings for form fields. Providing the ability
to associate a longer text description with an HTML element. Tables Authors now
have greater control over structure and layout (e.g., column groups). The abilit
y of designers to recommend column widths allows user agents to display table da
ta incrementally as it arrives rather than waiting for the entire table before r
endering. Compound Documents HTML now offers a standard mechanism for embedding
generic media objects and applications in HTML documents. The OBJECT element (to
gether with its more specific ancestor elements IMG and APPLET) provides a mecha
nism for including images, video, sound, mathematics, specialized applications,
and other objects in a document. It also allows authors to specify a hierarchy o
f alternate renderings for user agents that don t support a specific rendering.
Style Sheets Style Sheets simplify HTML markup and largely relieve HTML of the r
esponsibilities of presentation. They give both authors and users control over t
he presentation of documents-font information, alignment, colors, etc. The mecha
nism for associating a style sheet with a document is independent of the style s
heet language. Before the advent of style sheets, authors and had limited contro
l over rendering. HTML 3.2 included a number of
attributes and elements offering control over alignment, font size, and text col
or. Authors also exploited tables and images as a means for laying out pages. Th
e relatively long time it takes for users to upgrade their browser’s means that th
ese features will continue to be used for some time. However, since style sheets
often more powerful presentation mechanisms, the World Wide Web consortium will
eventually phases out many of HTML s presentation elements and attributes. COMP
ONENTS OF WWW: WEBPAGE: The part of the Web the user sees the front-end" is know
n as a Web page, made up of links, images, navigation tools text, etc. Web docum
ents are files of information residing at a Web site. These documents are usuall
y coded in HyperTextMarkupLanguage (HTML) HOME PAGE: Home page is the first page
of web documents. Home page is the entry point for that particular WWW site. Al
so, home page is the page a browser loads. Every browser has its own home page.
However, the default homepage for a browser can be changed. LINK: A link can be
anything on a page such as text or graphics, is a gateway to another page within
the sight, sore to an entirely different site. WEB SITES: -
A group of related pages is a site. They are the pages to go on he Web. Companie
s, Government agencies, institutions, individuals, etc maintain the web sites. W
EB SERVERS: Web sites are housed on a server, which is a computer design to "ser
ve" the file up to the user in a proper format. It is also refer to as the "Back
-end" and is actually software that runs at a web site and returns web documents
upon request by the web browser. Servers run all the time and wait for users to
request information. The web gets its name, in fact, from the interdependent ne
twork of server’s worldwide. The user s computer is a terminal, or end point, in t
his network. HEPERTEXT: The operation web realizes on hypertext as its means of
interacting with users. Hypertext is basically the same regular textit can be st
ored read, searched or editedwith an important extension: Hypertext contains con
nections with in the text to other documents. This new text would themselves hav
e links and a connection to others documents. Continually selecting Hypertext is
like taking a free-associative tool of information. In this way, hypertext link
s, called hyper links, can create a complex virtual web of connections. GATEWAY
PROGRAMS: Programs that accept and process request from a web server and generat
e new web pages. These programs add a new level of interactivity on the web not
possible by simple HTML documents. These programs usually
Server SERVER
Client Client
SERVER
handle requests to run a certain program or access information from a database.
PROTOCAL: A protocol is a set of rules for two computers to use when transferrin
g data. While the World Wide Web encompasses previously existing protocols such
as GOPHER and FTP, also critical to the WWW proposal was the development of new
protocol, especially design for the needs of a distributed hypertext system. It
is a fast, stateless, object oriented protocol called hypertext transfer Protoco
l
Handle Client Requests
Server
SYSTEM SPECIFICATION
The application ONLINE designed into two modules SHOPPING was the and the 1. For
the customers who wish to buy articles? 2. For the storekeeper who maintains up
dates the information pertaining to articles and those of the customers. BUSSINE
SS PROCESS MODEL The end-user of this product is a
departmental store where the application is hosted on the web and the administra
tor maintains the database. The application which is deployed at the departmenta
l stores will automate the customer details that are appended to the customers d
atabase, the details of the items are brought forward from the database for the
customers view based on the selection through the menu and the database of all t
he products are updated at the end of each transaction. Data entry into the appl
ication can be done through various screens designed for various levels of users
. Once the authorized personnel feed relevant data into the system, several repo
rts could be generated as per the security. If the customer wants to buy the pro
duct he wants to enter into the shopping chart. He selects the desired product,
after that he enter in to the order form he fills the order form. After filling
order form merchant shipped the product to address specified by the Customer.
Bill is send by merchant the address specified by the customer, after that custo
mer gives the credit card number. Here marchant can be stored the customer shipp
ed address, and customer details. Initially marchant enter with login, which is
maintained in database, and also maintain the product details in the database. E
very time he has access the insertion Updating and deletion when and where ever
he wants. The central concept of the application is to allow the Customer to sho
p virtually using
the Internet and allow customers to buy the items and articles of their desire f
orm the store. The information pertaining to the products are stored on an RDBMS
at the server side (store). The Server processes the customer s request and the
items are shipped to the address submitted by them. HTML is a formal set of spe
cifications used to define information, which can be added to the content of a d
ocument as an aid processing. The purpose of HTML is to specify how the text sho
uld be processed. The purpose of a browser becomes to act as a presentation engi
ne, to interpret HTML & display the contents in appropriate manner. Within Hyper
text there will be an indication of the start and end of the paragraph, there w
ill be no explicit instructions about the size, fonts, color, etc., It will cont
ain the basic information about the link but no specifications about how to disp
lay the highlight the link. It left to the browser how information should be dis
played.
The importance of HTML lies with Internet because one doesn’t know about the end u
ser since there are different user types on the NET. If HTML would be a language
having instructions about the colors, sizes & fonts it would be subjected to a
specific environment> Secondly as the number of users grow day by day one should
think of minimizing the amount of information to be passed from one system to t
he other. Hence HTML would contain plan ext. file would occupy less space than a
ny other graphics file but, having the addresses of those
locations. If hypertext one must send information for displaying the text and th
ese instructions are embedded in the text itself.
SYSTEM DESIGN
Design of software involves conceiving, planning out and specifying the external
ly observable characteristics of the software product. We have data design, arch
itectural design and user interface design in the design process. These are expl
ained in the following section. The goal of design process is to provide a blue
print for implementation, testing and maintenance activities. DATA DESIGN: The p
rimary activity during data design is to select logical representations of data
objects identified during requirement analysis and software analysis. A data dic
tionary explicitly represents the relationships among data objects and the const
rains on the elements of the data structure. A data dictionary should be establi
shed and used to define both data and program design. FESIBILITY STUDY: Feasibil
ity study is conducted once the problem is clearly understood. Feasibility study
is a high level capsule version of the entire system analysis and design proces
s. The objective is to determine quickly at a minimum expense how to solve a pro
blem. The purpose of feasibility is not to solve the problem but to determine if
the problem is worth solving. The
system has been tested for feasibility in the following points.
1. Technical Feasibility 2. Economical Feasibility 3. Operational Feasibility.
1. Technical Feasibility: The project entitles "Project Monitoring System" is te
chnically feasibility because of the below mentioned feature. The project was de
veloped in Java which Graphical User Interface. It provides the high level of re
liability, availability and compatibility. All these make Java an appropriate la
nguage for this project. Thus the existing software Java is a powerful language.
2. Economical Feasibility: The computerized system will help in automate the se
lection leading the profits and details of the organization. With this software,
the machine and manpower utilization are expected to go up by 80-90% approximat
ely. The costs incurred of not creating the system are set to be great, because
precious time can be wanted by manually. 3. Operational Feasibility: In this pro
ject, the management will know the details of each project where he may be prese
nted and the data will be maintained as decentralized and if any inquires for th
at particular contract can be known as per their requirements and necessaries.
Implementation:
Implementation is the stage where the theoretical design is turned into a workin
g system. The most crucial stage in achieving a new successful system and in giv
ing confidence on the new system for the users that it will work efficiently and
effectively. The system can be implemented only after thorough testing is done
and if it is found to work according to the specification. It involves careful p
lanning, investigation of the current system and its constraints on implementati
on, design of methods to achieve the change over and an evaluation of change ove
r methods a part from planning. Two major tasks of preparing the implementation
are education and training of the users and testing of the system. The more comp
lex the system being implemented, the more involved will be the systems analysis
and design effort required just for implementation. The implementation phase co
mprises several activities. The required hardware software acquisition is carrie
d out. system may require some software to developed. For this, programs are wri
tten tested. The user then changes over to his fully tested system and the old s
ystem discontinued. of and The be and new is
TESTING:
The testing phase is an important part of
software development. It is the process of finding errors and missing operations
and also a complete verification to determine whether the objectives are met an
d the user requirements are satisfied. Software steps: testing is carried out in
three
The first includes unit testing, where in each module is tested to provide its c
orrectness, validity and also determine any missing operations and to verify whe
ther the objectives have been met. Errors are noted down and corrected immediate
ly. Unit testing is the important and major part of the project. So errors are r
ectified easily in particular module and program clarity is increased. In this p
roject entire system is divided into several modules and is developed individual
ly. So unit testing is conducted to individual modules. The second step includes
Integration testing. It need not be the case, the software whose modules when r
un individually and showing perfect results, will also show perfect results when
run as a whole. The individual modules are clipped under this major module and
tested again and verified the results. This is due to poor interfacing, which ma
y results in data being lost across an interface. A module can have inadvertent,
adverse effect on any other or on the global data structures, causing serious p
roblems. The final step involves validation and testing which determines which t
he software functions as the user expected. Here also some modifications were. I
n the completion of the project it is satisfied fully by the end user.
Maintenance and Enhancement
AS the number of computer based systems, grieve libraries of computer software b
egan to expand. In house developed projects produced tones of thousand soft prog
ram source statements. Software products purchased from the outside added hundre
ds of thousands of new statements. A dark cloud appeared on the horizon. All of
these programs, all of those source statements-had to be corrected when false we
re detected, modified as user requirements changed, or adapted to new hardware t
hat was purchased. These activities were collectively called software Maintenanc
e. The maintenance phase focuses on change that is associated with error correct
ion, adaptations required as the software s environment evolves, and changes due
to enhancements brought about by changing customer requirements. Four types of
changes are encountered during the maintenance phase. Correction Adaptation Enha
ncement Prevention
Correction: Even with the best quality assurance activities is lightly that the
customer will uncover defects in the software. Corrective maintenance changes th
e software to correct defects. Maintenance is a set of software Engineering acti
vities that occur after software has been delivered to the customer and put into
operation. Software configuration management is a set of tracking and control a
ctivities that began when a software project
begins and terminates only when the software is taken out of the operation. We m
ay define maintenance by describing four activities that are undertaken after a
program is released for use: Corrective Maintenance Adaptive Maintenance Perfect
ive Maintenance or Enhancement Preventive maintenance or reengineering Only abou
t 20 percent of all maintenance work are spent "fixing mistakes". The remaining
80 percent are spent adapting existing systems to changes in their external envi
ronment, making enhancements requested by users, and reengineering an applicatio
n for use. ADAPTATION: Over time, the original environment (E>G., CPU, operating
system, business rules, external product characteristics) for which the softwar
e was developed is likely to change. Adaptive maintenance results in modificatio
n to the software to accommodate change to its external environment. ENHANCEMENT
: As software is used, the customer/user will recognize additional functions tha
t will provide benefit. Perceptive maintenance extends the software beyond its o
riginal function requirements. PREVENTION: change, Computer software deteriorate
s due to and because of this, preventive
maintenance, often called software re engineering, must be conducted to enable t
he software to serve the needs of its end users. In essence, preventive maintena
nce makes changes to computer programs so that they can be more easily corrected
, adapted, and enhanced. Software configuration management (SCM) is an umbrella
activity that is applied throughout the software process. SCM activities are dev
eloped to Identify change. Control chug. Ensure that implemented. Report change
interest. change to is being that may properly have an
others
DESIGN SPECIFICATION
TABLES
Table Name: PRODUCT ----------------------------------------------------Column N
ame Type ----------------------------------------------------Product Id Int Prod
uct Name Varchar Product Type Varchar UnitPrice Float
Quantity Varchar Units in stock Int Units on Order Int -------------------------
---------------------------Table Name: CUSTOMER --------------------------------
---------------Column Name Type -----------------------------------------------O
rder Number Int Order Date Date CustomerName Varchar BillAddress Varchar Shippin
gAddress Varchar PhoneNumber Varchar Email-Id Varchar Amount Float Shipped Statu
s Varchar
------------------------------------------
Table Name: PRODTABLE -----------------------------------------------Column Name
Type -----------------------------------------------ProdId Int ProductName Varc
har Price Float
-----------------------------------------------Table Name: CREDITCARD ----------
-------------------------------------Column Name Type --------------------------
---------------------CardType Varchar CardNumber Varchar -----------------------
-------------------------
DATAFLOW DIAGRAMS
Merchant
Customer
CONTEXT DIAGRAM
Product details
Enhance Update
Delete
Order
Customer Details
FIRST
LEVEL
DATA
FLOW
DIAGRAM
FOR
MARCHANT
Merchant
Enhance stores
LOGIN TO ENHANCE STORES
Merchant Details
Store Details
Merchant
Delete Or Update
FIRST LEVEL DATA FLOW LOGIN TO ENHANCE STORES
DIAGRAM
FOR
MARCHANT
Merchant Details
Updated store Details
Customer
Product type
FIRST LEVEL DATAFLOW PROCESSING ON PRODUCTS
DIAGRAM
FOR
CUSTOMER
Product details
Customer Details
Amount Payable
Customer Order
Bill Specified by AddressShipment the Customer
SECOND LEVEL SHIPMENT
DATA
FLOW
DIAGRAM
FOR
BILL
Product details
Shipment Address
INTERPRETATION OF THE RESULT The system has been implemented and tested successf
ully. Requirements the Present the System. The Proper consideration has been giv
en through out the development of for a wide range of new enhancements in future
, system. The system is developed user friendly. and future requirements in mind
and made very flexible. There are limitations of It meets the information speci
fied to the great extent.
Although the system has been designed keeping
In future, if it is required to generate reports other than provided by the syst
em, it can be simply Achieved by a separate module to the main menu without affe
cting the design of the system.
ADVANTAGES
• It simplifies the operation. • It avoids a lot of manual work. • Every Transaction i
s obtained and processed immediately. • Avoids errors by avoiding the manual work.
•User friendly screen to enter the data and Enquire the database tables. • Online h
elp messages available to the operating system. • User can easily access the syste
m without much experience. • Provide Hardware and software securities. • Portable an
d flexible for further extension.
CONCLUSION
The central concept of the application is to allow the customer to shop virtuall
y using the Internet and allow customers to buy the items and articles of their
desire from the store. The information pertaining to the products are stores on
an RDBMS at the server side (store). and the The buy the items The Server proces
s the customers are shipped was to the address into for two the the and is a is
submitted by them. application articles. who pertaining end the at user web the
designed is modules first Os for the customers who wish to Second and the this t
he the to of and storekeepers information The departmental hosted is on maintain
s updates articles product
those of the customers? store where application
administrator database, the
maintains the database. deployed
The application which
customer
details of the items are brought forward from the database for the customer view
based on the selection through the menu and the database of all the products ar
e updated at the end of each transaction.
Data entry into the application can be done through feed various the screens des
igned data into for the various levels of users. personnel Once the authorized
relevant
system, several reports could be generated as per the requirements. This system
offers information relevant to the user accessing unnecessary the application an
d at thus the avoiding overloading
same time maintaining the security.
BIBILIOGRAPHY HTML Publishing Bible Netscape Java Script The Complete Reference
OfJava - Alan Simpson. - Peter& Kent. John
-Patricknaughton
Java Network programming - RustyHarod. Software Engineering Analysis & Design Of
Information - Fairly. - James A. Senn.

You might also like