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 Javas 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 Worths 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 todays 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 primitives 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 rs 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 youll 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 Wans. These Wa n's are connected via telephone line, satellite links etc. Importantly these LAN 's are connected to form Wans 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 LANs to form Wans 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: Theyre 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 Consortiums 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 browsers 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 servers 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 doesnt 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