Professional Documents
Culture Documents
PROFESSIONAL STUDIES
Submitted By:
PRAKHAR SHARMA
Roll no. :- 180820625057
The project is submitted for The Partial Fulfillment
of The Requirement for the degree of
BACHELOR OF COMPUTER APPLICATION (BCA)
CERTIFICATE
case I have been able to complete my project because of the support I have
This project would not have seen the light of day without the guidance of
my guide.
I extend my heartfelt thanks to him for offering his valued guidance in completing
the project and also thankful for his valuable suggestion and efficient supervision
in spite of having arduous schedule. The project would have ended in a prenatal
stage if not for this perseverance and firm belief in my potential. This project is
certainly a success because of his all around help and concern; any word of thanks
Truly every day has been a learning experience for me due to the presence of
The first and foremost objective of the project is to give a better service to the
customer at the time of reserving the ticket of airline and eradicate the problems
faced by the customer to some extent .
The Airline Reservation System (ARS) was one of the earliest changes to
improve efficiency. ARS eventually evolved into the Computer Reservation
System (CRS)
A Computer Reservation System is used for the reservation of a particular airline
and interfaces with a Global Distribution System (GDS) which supports travel
agencies and other distribution channels in making reservations for the most major
airlines in a single system .Airline Reservation System contain airline schedule,
fare traffics, passenger reservations and ticket records. An airline’s direct
distribution works within their own reservation system, as well as pushing out
information to the GDS. A second type of direct distribution channel is consumers
who use the internet or mobile application to make their own reservations.
1. Admin Module:
Admin plays the key role throughout the whole project.Admin having own
username and password keeps track of the flight details and also about the
customer
He can approve and can also reject the booking application of the customer.
2. User/Customer Modules:
User also having his/her own username and password for log on.
After log on he/she can view all the flights and their details and can book tickets as
per the requirement. User can also view and edit his own profile.
TABLE OF CONTENTS
Index
1. INTRODUCTION
2. REQUIRED SPECIFICATIONS
2.1 System Study
2.2 System specification
2.3 System Requirement study
2.4 Software specification
a. Java Server Pages
b. Java Script
c. Struts Framework and Servlet.
d. HTML
e. introduction to SQL Server.
3. SYSTEM DESIGN
3.1 Date base Design
3.2 Table Structures.
3.3 Data Flow Diagram.
3.4 ER Diagram.
4. IMPLEMENTATION
5. TESTING
6. CODING
7. CONCLUSION
8. APPENDIX
9. BIBLIOGRAPHY
LIST OF TABLES
BOOKING_DETAILS
CUSTOMERDETAILS
FEEDBACK_DETAILS
FLIGHTDETAILS
LOGIN
NOTICE
PAYMENTDETAILS
REGISTRATION
LIST OF FIGURES
Data Flow Diagram
Entity Relationship Diagram
CHAPTER-1
INTRODUCTION
Introduction
Online Air Ticket Booking system is to provide an option to customers to book
the tickets online and to check the confirmation online. This system will help the
company to sell the flight tickets online. Unless like in the previous stage people as
to walk into travel agency or this company ticket counter to buy the tickets and
also to check the flight timings. This problem is over come introducing this system.
Existing System
Presently the company has ticket counters in the airport. Where people as to
come to book the tickets or to check the flight timings. Also there are many travel
agents take the advance booking. In turn these agents will check out with the main
ticket counter officials for the ticket confirmation. This is very lengthy and tedious
process.
Proposed System
The proposed system will available online. So anybody who is interested in the
flight timings and ticket booking they check online only.
1. Online air ticketing saves time by reducing the time involved in the
physical transportation of the customer to the reservation counter; online air
ticketing process saves time in absolute terms.
2. It enables the customer to purchase tickets from the remote areas, thereby
increasing the customer-centricity of the services provided.
3. With a segment of customers opting for the online facilities, the pressure
at the reservation counter is substantially reduced.
5. With faster, easier and hassle-free services to the customer, the company is
poised for a better competitive advantage in face of the oligopolistic structure.
6. Online portal can be used to ascertain any particular facilities that the
customer might be looking forward to during the journey.
7. The portal can also be used to inform the prospective customers about the
future economy option and other function benefits that the company could have
planned; thereby, enabling the customer to plan in advance.
8. With the induction of the cash on delivery system, the customer can easily
deliver his air-tickets while being at home.
CHAPTER-2
REQUIRED SPECIFICATIONS
2.1. System study
History of java:
Java language was developed by James Gosling and his team at sun micro
systems and released formally in 1995. Its former name is oak. Java Development
Kit 1.0 was released in 1996. To popularize java and is freely available on Internet.
Overview of java:
Java is loosely based on C++ syntax, and is meant to be Object-Oriented
Structure of java is midway between an interpreted and a compiled language. Java
programs are compiled by the java compiler into Byte Codes which are secure and
portable across different platforms. These byte codes are essentially instructions
encapsulated in single type, to what is known as a java virtual machine (JVM)
which resides in standard browser.
Jvm verifies these byte codes when downloaded by the browser for integrity.
Jvm available for almost all OS. JVM converts these byte codes into machine
specific instructions at runtime.
Features of java:
Java is object-oriented language and supports encapsulation,
inheritance, polymorphism and dynamic binding, but does not support
multiple inheritance. Every thing in java is an object except some
primitive data types.
Java is portable architecture neutral that is java programs once
compiled can be executed on any machine that is enabled.
JAVA is distributed in its approach and used for internet
programming.
Java is robust, secured, high performing and dynamic in nature.
Java supports multithreading. There for different parts of the program
can be executed at the same time
Java Environment:
Java environment includes a large no. of tools which are part of the system
known as java development kit (JDK) and hundreds of classes, methods, and
interfaces grouped into packages forms part of java standard library (JSL).
Java Architecture:
Java architecture provides a portable, robust, high performing environment
for development. Java provides portability by compiling the byte codes for the java
virtual machine which are then interpreted on each platform by the runtime
environment. Java also provides stringent compile and runtime checking and
automatic memory management in order to ensure solid code.
INTRODUCTION
Servlets extend the request-response-oriented servers, such as Java-
enabled Web servers. For example, a Servlet can retrieve data from an HTML
form and applying the business logic used to update Product database.
Client System
Servlet Product
Database
HTTP
Server
ServletConfig
Servlet
HttpServlet
HttpServletRequest Object:
An HttpServletRequest Object provides to access the data from the
client:
The getParameter method returns the value of a named
parameter and similarly the getParameterValues method
returns an array of values for the named parameter.
The getReader method returns the BufferedReader to use
to read the data.
The getInputStream method returns the
ServletInputStream to use to read the data.
HttpServletResponse Objects:
An HttpServletResponse object provides the HTTP method. To access
the data from the user:
The getWriter method returns a Writer.
The getOutputStream method returns the ServletOutputStream.
Client
Handle
Servlet code Client
Server Request
Client
Servlet code
Server
Destroying Servlets:
Destroys the Servlet runs the servlet’s destroy method. The method is
run once; similarly the server will not run the destroy method, when the server
calls the destroy method, another thread might be running a service request.
Servlets run until the server destroys them.
Communication of Servlets:
To communicate Servlets sometimes need to access network
resources. HTML pages, objects shared among Servlets at the same server and
other Servlets:
The Request Dispatcher Object with other Server Resources
(JSDK 2.1) such as other Servlets with HTML pages and so on.
The resource is an object in the JAVA programming language
such as Sharing Resources among Servlets (JSDK2.1).
The other servlet’s Servlet object and calling its public such as
Calling Servlet from Servlets (JSDK2.0).
Utilities For Running Servlets:
The JSDK2.0 has a utility called Servletrunner. If you can test it with
the utility included in the JSDK, while JSDK2.1 comes with a small utility
server.
Properties of Servlets:
The Servlet requires initialization parameters, if you set this data before
starting the JSDK process that runs your Servlet.
STRUTS
Why struts?
We are using struts in this project. in the present scenario of web-technology, struts
plays a vital role. strut is a better structure. In standard mvc there is no clue
regarding the structure and designing. java pages being used, labels that has been
used so we found the previous mvc was not at it’s best to eradicate those
problems. We are using an api and a framework
In the name of struts designed by apache.it takes the help of standard servelet api
,jsp,java.
This frame work also follows mvc architecture means it has a model component.
it mix with some standard xml file. and struts defined java file.
Controller(Servlet)
Request
Processing Data
Validation
Model
Business Logic
Data
Manipulation
Browser Database
. In the MVC architecture, a central servlet, known as the Controller, receives all
requests for the application. The Controller then processes the request and works
with the Model to prepare any data needed by the View (which is usually a JSP)
and forwards the data to a JSP. The JSP then uses the data prepared by the
controller to generate a response to the browser. In this architecture, the business
and presentation logic are separated from each other. Having the separation of
business and presentation code accommodates multiple interfaces to the
application, be they web, wireless, or GUI (Swing). Additionally, this separation
provides excellent reuse of code.
of the some forces behind MVC for GUI development apply nicely to Web
development.
Model Components
View Components
View components are used in the MVC architecture to generate the response to the
browser. Thus, a view component provides what the user sees. Often times the
view components are simple JSPs or HTML pages. However, you can just as
easily use WML design advantages of MVC. You can use any view technology
that you’d like without impacting the Model layer of your application.
Controller Components
At the core of the MVC architecture are the controller components. The
controller is typically a servlet that receives requests for the application and
manages the flow of data between the Model layer and the View layer. Thus, it
controls the way that the Model and View layers interact. The Controller often
uses helper classes for delegating control over specific requests or processes.
The Struts framework is a rich collection of Java libraries and can be broken
down into the following major pieces:
Base framework
JSP tag libraries
Tiles plugin
Validator plugin
Base Framework
The base frame work provides the core MVC functionality and is comprised
of the building blocks for your application. At the foundation of the base
framework is the controller servlet ActionServlet. The rest of the base framework
is comprised of base classes. Most prominent among the base class are the Action
and ActionForm classes. These two classes are used extensively in all Struts
applications. Action classes are used by Action servlet to process specific
requests. Action Form classes are used to capture data from HTML forms and to
be a conduit of data back to the View layer for page generation.
HTML Used to generate HTML forms that interact with the Struts APIs.
Bean Used to work with Java bean objects in JSPs, such as accessing bean values.
Nested Used to allow arbitrary levels of nesting of the HTML, Bean, and logic tags
that otherwise do not work.
Tiles Plug-in
Struts come packaged with the Tiles sub framework. Tiles is a rich JSP
templating framework that facilitates the reuse of presentation (JTML) code. With
Tiles, JSP pages can be broken up into individual tiles or pieces and then glued
together to create one cohesive page. Similar to the design principles that the core
Struts framework is built on, Tiles provides excellent reuse of View code
Validator Plug-in
Struts come packaged as of version 1.1, with the Validator sub framework
for performing data validation. Validate provides a rich framework for performing
data validation on both the server side and client side. Each validation is
configured in an outside XML file so that validations can easily be added to and
removed from an application declaratively versus being hard-coded into the
application. Similar to Tiles, prior to Struts 1.1, validator was a third party ass-on,
but has since been included in the project and is more tightly integrated.
Struts provide a rich set of functionality and features for developing the
View layer of MVC applications. There are several forms that the View layer of a
Struts application can take. It can be HTML/JSP (the most common case) or it can
be XML/XSLT, Velocity, Swing, or whatever your application requires. This is
the power of Struts and MVC. Because HTML/JSP is the typical view technology
used for Java-based Web applications Struts provides the most functionality and
features for developing your application this way. The remainder of this chapter
focuses on Struts support for creating the view layer using HTML/JSP.
Struts HTML/JSP view layer support can be broken down into the following
major components:
JSP pages
Form Beans
JSP tag libraries
Resource bundles
JSP PAGES
JSPs are the centerpiece of the Struts view layer. They contain the static
HTML and JSP library tags that generate dynamic HTML. Together the static and
dynamically generated HTML gets sent to the user’s browser for rendering. That
is, the JSPs contain the code for the user interface with which a user interacts. JSPs
are the centerpiece of the Struts View layer. They contain the static HTML and
JSP library tags that generate dynamic HTML. Together the static and
dynamically generated HTML gets sent to the user’s browser for rendering. That
is, the JSPs contain the code for the user interface with which a user interacts.
JSPs in Struts applications are like JSPs in any other java-based Web
application. However, to adhere to the mvc paradigm, the JSPs should not contain
any code for performing business logic or code for directly accessing data sources.
Struts provide a set of tag libraries that supports displaying data and creating
HTML forms that capture data. Additionally, the tags support displaying content
stored in resource bundles. The JSP tag libraries glue those two together and the
resource bundles provide a means of content management.
FORM BEANS
Form Beans provide the conduit for transferring data between the view and
controller layers of Struts applications. When HTML forms are submitted to a
Struts application, Struts takes the incoming form data and uses it to populate the
form’s corresponding form Bean. The Struts Controller layer then uses the Form
Beans to access data that must be sent to the Model layer. On the flip side, the
Controller layer populates form Beans with Model layer data so that it can be
displayed with the View layer. Essentially, Form Beans are simple data containers.
They either contain data from an HTML form that is headed to the Model via the
controller or contain data from the Model headed to the View via the controller.
what’s best and or necessary really depends on the size and complexity of your
application. The following are the three sublayers:
The struts framework does not provide any specific features or constraints
for developing the Model layer of your application. At first glance this may seem
odd, or even a shortcoming, given that Struts is designed for building MVC
applications. However, it’s a actually a key design feature of struts and is a great
benefit. By not dictating how the Model layer should be bui9lt, struts gives your
application the flexibility to use any approach or technology for building the Model
layer code. Whether it be Enterprise java Beans, Java Data Objects (JDO), or the
Data Access Objects (DAO) pattern, struts will accommodate.
Because the model defines the business logic, the model is where struts ends
and your application code begins. Your Model code will be accessed from
subclasses of Struts Action object that are part of the Controller layer of the Struts
framework. Action subclasses interact with the model via Action’s interfaces and
use its Data Transfer Objects to pass and retrieve data.
You should not place any business logic or data access code in Action objects.
Doing so would bypass the separation of the Model and the Controller. Similarly,
your Model code should not have any ref4erences to Struts code or objects.
Violating this rule unnecessarily couples your core application code to Struts.
STRUTS AND THE CONTROLLER LAYER:
Struts provide a robust Controller layer implementation that has been designed
from the ground up to be extensible. At its core is the Controller servlet, Action
Servlet, which is responsible for initializing a Struts application’s configuration
from the struts configuration file and for receiving all incoming requests to the
application. Upon receiving arequest, action Servlet delegates its processing to the
Request Processor class. The Request Processor class processes all aspects of the
request, including selecting the Form Bean associated with the request, populating
the Form Bean with data, validating the Form Bean, and then selecting the correct
Action class to execute for the request. The Action class is where the Struts
framework ends and your application code begins. Action classes provide the glue
between the View and Model layers.
UNDERSTANDING THE FLOW OF EXECUTION
1.HTTP request
Controller View
7.Produce HTTP
Response
2.Create Form Bean 5.Create Result Beans 4.Call DAO Method
Model
DB
Form bean Result bean Data Access Object
(DAO)
It is necessary to describe the way that execution takes place. Struts uses the
Model-View-Controller design pattern,. The MVC architecture defines a specific
flow of execution. An understanding of this flow of execution is crucial to and
overall unders6snding of struts. For Mine HR, execution proceeds in the following
way:
The flow of execution for any Struts application as shown here.
1. The browser makes a request to the Struts application that is processed
by Action Servlet (controller).
2. Action Servlet (Controller) populates the Action form (View) object
with HTML form data and invokes it’s validate () method.
3. Action Servlet (controller) executes the Action object (Controller)
4. Action (Controller) interfaces with model components and prepares
data for view.
5. Action (Controller) forwards control, to the JSP (VIEW).
6. JSP (View) uses model data to generate a response to the browser.
Java database connectivity (jdbc)
Jdbc and Odbc in java:
Most popular and widely accepted database connectivity called Open
Database Connectivity (ODBC) is used to access the relational databases. It
offers the ability to connect to almost all the databases on almost all platforms.
Java applications can also use this ODBC to communicate with a database.
Then we need JDBC why? There are several reasons:
ODBC API was completely written in C language and it makes an
extensive use of pointers. Calls from Java to native C code have a
number of drawbacks in the security, implementation, robustness and
automatic portability of applications.
ODBC is hard to learn. It mixes simple and advanced features
together, and it has complex options even for simple queries.
ODBC drivers must be installed on client’s machine.
Architecture of JDBC:
JDBC Architecture contains three layers:
JDBC Application
JDBC Drivers
JDBC Drivers
Application Layer: Java program wants to get a connection to a
database. It needs the information from the database to display on the
screen or to modify the existing data or to insert the data into the
table.
Driver Manager: The layer is the backbone of the JDBC architecture.
When it receives a connection-request form.
The JDBC Application Layer: It tries to find the appropriate driver by
iterating through all the available drivers, which are currently
registered with Device Manager. After finding out the right driver, it
connects the application to appropriate database.
JDBC Driver layers: This layer accepts the SQL calls from the
application and converts them into native calls to the database and
vice-versa. A JDBC Driver is responsible for ensuring that an
application has consistent and uniform m access to any database.
When a request received by the application, the JDBC driver passes the
request to the ODBC driver, the ODBC driver communicates with the database,
sends the request, and gets the results. The results will be passed to the JDBC
driver and in turn to the application. So, the JDBC driver has no knowledge about
the actual database, it knows how to pass the application request o the ODBC and
get the results from the ODBC.
The JDBC and ODBC interact with each other, how? The reason is both the
JDBC API and ODBC are built on an interface called “Call Level Interface” (CLI).
Because of this reason, the JDBC driver translates the request to an ODBC call.
The ODBC then converts the request again and presents it to the database. The
results of the request are then fed back through the same channel in reverse.
Structured Query Language (SQL):
SQL (Pronounced Sequel) is the programming language that defines and
manipulates the database. SQL databases are relational databases; this means
simply the data is store in a set of simple relations. A database can have one or
more table. You can define and manipulate data in a table with SQL commands.
You use the data definition language (DDL) commands to creating and altering
databases and tables.
The design of a system produces the details that state how a system
meet the requirements identified during system analysis. System specialists often
refer to this stage as logical design, in contrast to the process of developing
program software, which is referred to as physical design.
Data Flow Diagrams have been used in the design of the system. Data
Flow Diagram is a graphical tool used to describe and analyze the movement of
data. The transformation of data from input to output, through processes may be
described logically using these Data Flow Diagrams.
The DFD shown to the user must represent only the major functions
being performed by the system. This is called Top Level DFD. If this process is
complex enough, it can be broken further into different levels. This process can be
continued till the process is simple. This is called the leveling of DFD’s.
Data Integrity:
Data Integrity means storing all the data in a singly place and allow each
application to access it. This approach results in more consistent, on update being
sufficient to achieve a new record status for all the applications, which use it.
Data Independence:
Data Independence is the insulation of application programs from changing
aspects of physical data organization. This objective seeks to allow changes in the
content and organization of physical data with out reprogramming of applications
and to allow modifications to application programs with out reorganizing the
physical data.
3.2.1. Normalization:
Data structuring is refined through a process called normalization, is a
formal process of developing data structures in a manner that eliminates
redundancy and promotes integrity. It is a step-by –step decomposition of complex
records into simple records to reduce redundancy, inconsistency and removes
anomalies.
There are several normal forms to be followed in the normalization process
.The most important and widely used are:
First Normal Form
Second Normal Form
Third Normal Form
3.2.1.1 First Normal Form (1 NF):
A table is said to be in the first normal form, if the intersection of any
column and row contains only value.
Identify a suitable identifier from the pool of UN normalized data. Remove
any item that repeat with in a single value of this key to another relation bringing
with them .The identifier key to form part of a new composite key in the relation.
3.2.1.2 Second Normal Form (2 NF):
For a table to be in the second normal form it should be in the first normal
form and the values in every column are functionally depend upon the primary
key.
3.2.1.3 Third Normal Form (3 NF):
For a table to be in the third normal form it should be in the second normal
form and the values in every non-key column are not transitively depend upon on
the primary key
Pid Number 22
Bid number 22
Date_of_payments date 7
Accountno number 22
Table name : Customer_details
Purpose : stores customer details
Primary key : Customerid
Definition:
A data flow diagram is a graphical technique that depicts information flow and the
transforms that applied as data move from input to output. The Data flow diagram
used to represent a system or software at any level of abstraction. In fact DFDs
may be portioned into levels.
A level of DFD, also called a context model, represents the entire software
elements as a single bubble with input and output by arrow. A level of DFD is
portioned into several bubbles with inter connecting arrows. Each of the process
represented at level one is sub function of the over all depicted in the context
model.
The DFD Notations:
Store
Stored Information that is used by the s/w
Level 0:
LOGIN
AIRLINE
ADMIN RESRVATION USER
SYSTEM
DATABASE
Level-0
INPUT (0.0)
PROCESS OUTPUT
DATASTORE
LEVEL - 1
User Name
(1.0)
Password Login
LOGIN Successfully
Type
LOGIN
(1.1)
Customer Details Login
REGISTRATION Successfully
LOGIN
REGISTRATION
2nd LEVEL DFD (FOR VALID ADMIN)
DELETE FLIFHT(2.0.1.2)
PROCESS
2nd LEVEL DFD (FOR ADD FLIGHT)
FLIGHT NAME
FLIGHT NO
(2.0.1.0)
FROM
TO
ARRIVAL TIME
DEPARATURE TIME
ADD FLIGHT SUCESSFULLY
ADDED
CLASS
SEAT AVAILABLE
PRICE
FLIGHTDETAILS
FLIGHTDETAILS
2nd LEVEL DFD (FOR VIEW CUSTOMER)
(2.0.2) VIEWED
SELECT CUSTOMER VIEW VIEWED
SUCESSFULLY
CUSTOMER
CUSTOMERDETAILS
BOKING_DETAILS
2nd LEVEL DFD (FOR VIEW FEEDBACK)
NOTICE
NOTICE
3rd LEVEL DFD (FOR VIEW BOOKING)
MY PROFILE (3.0.1)
CHANGE PASSWORD(3.0.2)
(3.0)
VIEW FLIGHT(3.0.3)
VALID USER
MY BOOKING(3.0.4)
PROCESS CANCELLATION(3.0.5)
GIVE FEEDBACK(3.0.6)
VIEW ANNOUNCEMENT(3.0.7)
(3.0.1)
MY PROFILE EDIT PROFILE(3.0.1.0)
PROCESS
DELETE PROFILE(301.1)
3RD LEVEL DFD (FOR EDIT PROFILE)
CUSTOMERDETAILS
CUSTOMERDETAILS
4TH LEVEL DFD (FOR NOTICE MANAGEMENT)
ADD NOTICE(4.0.1)
(4.0)
ADMIN EDIT NOTICE(4.0.2)
PROCESS
DELETE NOTICE(4.0.3)
(4.0.2)
NOTICE
SELECT NOTICE MODIFIED
MODIFIED
PROCESS SUCCESSFULLY
NOTICE
3.4 ER-DIAGRAM
NAME ADDRESS
USERNAME
CUSTOMERID
SLNO
LOGIN HAS A
CUSTOMERDETAILS
PASSWORD TYPE
EMAIL
CID
GENDER PHONENO
HAS A
DATE_OF_BOOKIN DATE_OF_JOURNY
CLASS NO_OF_SEATS
BID
CID MODE_OF_PAY
BOOKING_DETAILS
FLIGHTNAME
FID
FLIGHTTO
FULL_NAME
ADDRESS
FLIGHTFROM
MOB_NO DD
HAS A
PID ACCOUNTNO BID
SUBJECT
NOTICENO
PAYMENTDETAILS USERNAME
CONTENT NOTICE
DATE_OF_PAYMENT DATE_OF_NOTICE
PAYMENTMODE
FNAME FLT_FROM
FID
FLIGHTDETAILS FLT_TO
CLASS
ARRIVALTIME
AVAILLABLE
PRICE
FEEDBACK_NO COMMENTS
SUGGESTION
FEEDBACK_DETAILS
NAME
DATE_OF_FEEDBACK
4. SYSTEM TESTING AND IMPLEMENTATION
Unit Procedure:
Brute force
Back-tracking
Cause-elimination
4.1.5.2 Back-tracking:
This is fairly common debugging approach that can be used
successfully in small programs. Beginning at the site where a symptom has
been uncovered, the source code is traced backwards (manually) until the site of
the cost is found.
Cause-Elimination:
This approach is manifested by induction/deduction and introduces the
concept of ‘binary partition’. A ‘cause hypothesis’ is devised and the error
related data are used to prove or disprove the hypothesis. Alternatively, a list of
all possible causes is developed, and tests are conducted to eliminate each. If
initial tests indicate that a particular cause hypothesis shows promise, that data
are refined in an attempt to isolate the path.
Each of the debugging approaches can be supplemented with
debugging tools. A wide variety of debugging compilers, dynamic debugging
aids (tracers), automatic test case generators, memory dumps and cross-
reference maps can be applied. However, tools are not a substitute for careful
evaluation, based on a complete software design document and clear source
code.
Existing documents such as employee loan details should be entered into the new
system. Since these files are very large, conversion of these may continue long
after the system based on current files has been implemented. Hence we need to
assign responsibility for each activity.
The system may come into full operation via number of possible
routes. Complete change over at one point time is conceptually the most tidy.
But this approach requires careful planning and coordination, particularly
during the changeover. A phased approach, possible implementing the system
of the section relating to one operation or procedure first and processing to
more novel or complex subsystems in the fullness of time. These likely to be
less traumatic.
A phased approach gives the staff time to adjust to the new system. But depends
on being able to split the system, without reliance on it. Thus approach is
sensible when the consequences of failure are disastrous, but will require extra
staff time. The fourth angle, is pilot operation permits any problems to be
tackled on a smaller scale operation. Pilot operation generally means the
implementation of the complete system, but at one location or branch only.
Screen shot:
Login.jsp
Description : This page comes first when you run this projects. This page is by
defult call index.jsp page.
AdminHome.jsp
Description :This page comes after inputing correct username, password and type
then clicking the Login button on Login page.
Fields :
Description: This page comes after clicking NewUser hyperlink at the Login page.
This page is for the registration of new user by filling required
fields available and all the data giving by the users through this page will store in
database.
UserHome.jsp
Description: This page comes after inputting correct username, password and type
then clicking the Login button on Login page.
Fields:
Description: This page comes after clicking the Attributes of user . It gives all the
information of the flight.
GiveFeedback.jsp
Description: This page is for storing the feedback given by the customer.
Fields:
Description: This page comes after clicking the Attributes of Admin i.e View
Customer. It gives the details of Customers.
Fields:
Description: This page comes after clicking the Attributes of Admin i.e. Give
Announcement. It gives the details about the Announcement.
ViewBooking.jsp
Description: This page comes after clicking the Attributes of Admin i.e View
Booking. It gives details of the booking of ticket.
ChangePassword.jsp
Description: This page comes after clicking the attribute of user i.e. Change
Password. This page changes the old password of a User.
DEVELOPMENT PROCESS
.
By applying this simple set of definite steps and deliverables at the outset
and relating this to a transparent time and cost structure, we provide clients with an
effective framework against which to measure expectation, quality, progress and
cost for their project.
2.2. DEVELOPMENT PROCESS
Waterfall Model
Requiremen
t analysis-
Design- v&v
Implementation-
v&v
Testing- v&v
Maintenance-
v&v
FEASEBILITY STUDY
FEASIBILITY ANALYSIS:
Security Feasibility
Operational Feasibility
Economical Feasibility
Technical Feasibility
SEQURITY FEASIBILITY:
OPERATIONAL FEASIBILITY:
The top level officials or the outsides can vital information quickly and
correctly form our interpretation.
ECONOMICALLY FEASIBILITY:
Keeping in view the no. of clients who would be using this software
that is the different places and locations, this project was developed keeping in
view the lowest hardware capacity computer available during that time. As can be
seen in our synopsis that we use p2 7 p3 computers the lowest available with the
client having the following configuration.
486 DX
60 MHz
1 GB HDD
12/16 MB RAM
The software was developed in JSP & Oracle8.0 because we opted for a front-end
that will be very user friendly, web friendly and easier for the end user. This also
helped the end user to a very large extent because usually the end user is just a data
entry operator who knows the distinction between letter and number. Keeping this
IQ level of the user into view this type of front-end was used for smooth operation.
TECHNICAL FEASIBILITY:
Here the cost incurred by searching an appropriate s/w which may handle
by some few people and hidden to others, but it reduces the searching time, so it
technically fit.
The module reduce the work load of different end user , and gives a clear
picture about the s/w required so the user use this module , hence this system is
operationally feasible .
As this page is technically, economically sequritically and operationally
feasible, so this system is judged feasible.
Hardware Feasibility
FOR SERVER
Monitor: S.V.G.A
Keyboard: Standard
Printer: Laser
UPS: 5KVA
For client
Monitor: S.V.G.A
Keyboard: Standard
Printer: Laser
UPS: 2KVA
Software Feasibility
Economical Feasibility
As soon as the specific requirements and solutions have been identified then
the cost of and benefits of each alternative would be evaluated.
Cost Of Estimation Of the Project
The cost of the major hardware, software and accessories required for this
project are 20 lakhs.
Requirements specification
What exactly are the data inputs to the system and what exactly are
the data outputs required of the system?
What are the likely complexities that might arise while solving the
problem?
After the analyst has collected all the required information regarding the
software to be developed, and has removed all incompleteness, inconsistencies,
and anomalies from the specification, he starts to systematically organize the
requirements n the form of an SRS document. The SRS document usually contains
all the user requirements in an informal form.
Nonfunctional requirements
Goals of implementation
The functional requirements part should discuss the functionalities required from
the system. It is useful to consider a system as performing a set of functions {f1}.
This functional view of a system is shown schematically in figure.
System
Input Output
DESIGN
Software design deals with transforming the customer requirements, as described
in the SRS document, into a form that is implement able using a programming
language, for a design to be easily implement able using a programming language,
the following items must be designed during the design phase:
System design
System design consists of the flow of control among different modules and the
approach i.e. function-oriented approach of object-oriented approach is used.
In our project we have used function-oriented approach. The commonly used data
flow control (DFD).
6.Coding
Web.xml
<struts-config>
<data-sources />
<form-beans >
<form-bean name="loginForm"
type="pp.form.LoginForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="loginForm"
name="loginForm"
parameter="submit"
path="/login"
scope="request"
type="pp.action.LoginAction">
<forward name="submit" path="/Registration.jsp"/>
<forward name="notapp" path="/Login.jsp"/>
<forward name="admin" path="/AdminHome.jsp"/>
<forward name="customer" path="/UserHome.jsp"/>
<forward name="view"
path="/FlightManagment.jsp"/>
<forward name="flight"
path="/FlightManagment.jsp"/>
<forward name="add" path="/AddFlight.jsp"/>
<forward name="fedit" path="/EditFlight.jsp"/>
<forward name="vcust" path="/ViewCustomer.jsp"/>
<forward name="vcust1" path="/ViewBooking.jsp"/>
<forward name="feed" path="/ViewFeedback.jsp"/>
<forward name="notice" path="/Announcement.jsp"/>
<forward name="vprof" path="/MyProfile.jsp"/>
<forward name="eprof" path="/EditProfile.jsp"/>
<forward name="dprof" path="/DeleteProfile.jsp"/>
<forward name="cpwd" path="/ChangePassword.jsp"/>
<forward name="fview" path="/View Flight.jsp"/>
<forward name="mbook" path="/MyBooking.jsp"/>
<forward name="cancel" path="/Cancellation.jsp"/>
<forward name="feed1" path="/GiveFeedback.jsp"/>
<forward name="vannoun"
path="/ViewAnnouncement.jsp"/>
<forward name="not" path="/NoticeMgmt.jsp"/>
<forward name="ntice" path="/EditNotice.jsp"/>
<forward name="dnotice"
path="/DeleteNotice.jsp"/>
<forward name="subError" path="/Registration.jsp"
/>
<forward name="logon" path="/Login.jsp" />
<forward name="logout" path="/UserHome.jsp" />
</action>
</action-mappings>
<message-resources
parameter="pp.ApplicationResources" />
</struts-config>
Home.jsp
Name : Professional
Description: A two-column, fixed-width design with dark
color scheme background.
Version : 1.0
Released : 20081230
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" />
<title>Professional by FreeCSSTemplates.org</title>
<link rel="stylesheet" type="text/css" href="style.css"
media="screen" />
</head>
<body>
<div id="wrapper">
<div id="header">
<div id="logo">
<h1>Air Ticket Reservation</h1>
<p>Fly In
Cooooooooollllllllllllll......................</p>
</div>
<!-- end #logo -->
<div id="menu">
<ul>
<li class="active"><a
href="Home.jsp">Home</a></li>
<li><a href="AboutUs.jsp">About
Us</a></li>
<li><a href="ContactUs.jsp">Contact
Us</a></li>
</ul>
</div>
<!-- end #menu -->
</div>
<!-- end #header -->
<div id="page">
<div id="header-pic"></div>
<div id="content">
<div class="post">
<h1 class="title"><h2>Welcome To Home
Page......</h2> </h1>
<p class="byline">
<div class="entry">
</div>
<div class="meta">
<p class="links">
Welcome aboard RK Airlines, where you are
made to feel like an honoured guest and not just a
passenger. At RK, a flight is not a journey between two
airports but an experience of a lifetime.RK is built
for people with things to do, places to be, people to
see - who don't want to waste time, money or energy in
the process. By minimizing the cost/time/tension of air
travel, RK opens up a country full of opportunities.
With RK, you've got a billion reasons to
fly</div>
</div>
<div class="post">
<p class="byline">
<div class="entry">
</div>
<div class="meta">
</div>
</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="sidebar-bgtop"></div>
<div id="sidebar-content">
<div id="sidebar-bgbtm">
<ul>
<li>
<h2>Sign Here<br /></h2>
<ul>
<li><a
href="Login.jsp">Login<br /></a></li>
<li><a
href="Registration.jsp">New User<br /></a></li>
</ul>
</li>
<li>
<ul>
</li>
</ul>
</div>
</div>
</div>
<!-- end #sidebar -->
<div style="clear:both; margin:0;"></div>
</div>
<!-- end #page -->
</div>
<div id="footer">
</div>
<!-- end #footer -->
</body>
</html>
Login.jsp
<%@ page language="java" pageEncoding="ISO-8859-1"%>
Name : Professional
Description: A two-column, fixed-width design with dark
color scheme background.
Version : 1.0
Released : 20081230
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" />
<title>Professional by FreeCSSTemplates.org</title>
<link rel="stylesheet" type="text/css" href="style.css"
media="screen" />
<script>
function validateForm(frm)
{
var uname=frm.uname.value;
var pwd=frm.pwd.value;
if(uname.length==0)
{
alert("Enter ur UserName");
frm.uname.focus();
return false;
}
if(pwd.length==0)
{
alert("Enter ur Password");
frm.pwd.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<div id="wrapper">
<div id="header">
<div id="logo">
<h1>Air Ticket Reservation</h1>
<p>Fly In
Cooooooooollllllllllllll......................</p>
</div>
<!-- end #logo -->
<div id="menu">
<ul>
<li class="active"><a
href="Home.jsp">Home</a></li>
<li><a href="AboutUs.jsp">About
Us</a></li>
<li><a href="ContactUs.jsp">Contact
Us</a></li>
</ul>
</div>
<!-- end #menu -->
</div>
<!-- end #header -->
<div id="page">
<div id="header-pic"></div>
<div id="content">
<div class="post">
<h1 class="title"><h2>Welcome Login
Page......</h2> </h1>
<p class="byline">
<div class="entry">
</div>
<div class="meta">
<p class="links">
<p class="byline">
<div class="entry">
</div>
<div class="meta">
</div>
</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="sidebar-bgtop">
</div>
<div id="sidebar-content"><div id="sidebar-
bgbtm"><ul><li><h2>Sign Here<br /></h2><ul>
<li><a
href="Login.jsp">Login<br /></a></li>
<li><a
href="Registration.jsp">New User<br /></a></li>
</ul>
</li>
<li>
<ul>
</li>
</ul>
</div>
</div>
</div>
<!-- end #sidebar -->
<div style="clear:both; margin:0;"></div>
</div>
<!-- end #page -->
</div>
<div id="footer">
</div>
<!-- end #footer -->
<></body>
</html>
UserHome.jsp
<%@ page language="java" pageEncoding="ISO-8859-1"%>
Name : Professional
Description: A two-column, fixed-width design with dark
color scheme background.
Version : 1.0
Released : 20081230
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" />
<title>Professional by FreeCSSTemplates.org</title>
<link rel="stylesheet" type="text/css" href="style.css"
media="screen" />
</head>
<body>
<div id="wrapper">
<div id="header">
<div id="logo">
<h1>Air Ticket Reservation</h1>
<p>Fly In
Cooooooooollllllllllllll......................</p>
</div>
<!-- end #logo -->
<div id="menu">
<ul>
<li class="active"><a
href="Home.jsp">Home</a></li>
<li><a href="AboutUs.jsp">About
Us</a></li>
<li><a href="ContactUs.jsp">Contact
Us</a></li>
<li><a
href="login.do?submit=LogOut">Logout</a></li>
</ul>
</div>
<!-- end #menu -->
</div>
<!-- end #header -->
<div id="page">
<div id="header-pic"></div>
<div id="content">
<div class="post">
<h1 class="title"><h2>Welcome To User Home
Page......</h2> </h1>
<p class="byline">
<div class="entry">
</div>
<div class="meta">
<p class="links">
<br /></div></div>
<div class="post">
<p class="byline">
<div class="entry">
</div>
<div class="meta">
</div>
</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="sidebar-bgtop">
</div>
<div id="sidebar-content"><div id="sidebar-
bgbtm"><ul><li><h2><br /></h2><ul>
<li><a
href="login.do?submit=viewProfile">My Profile<br
/></a></li>
<li><a
href="ChangePassword.jsp">Change Password</a></li>
<li><a
href="login.do?submit=viewFlight">View Flight</a></li>
<li><a
href="login.do?submit=myBooking">My Booking</a></li>
<li><a
href="login.do?submit=cancelFlight">Cancellation<br
/></a></li>
<li><a
href="login.do?submit=viewAnnouncement">View
Announcement<br /></a></li>
</ul>
</li>
<li>
<ul>
</li>
</ul>
</div>
</div>
</div>
<!-- end #sidebar -->
<div style="clear:both; margin:0;"></div>
</div>
<!-- end #page -->
</div>
<div id="footer">
</div>
<!-- end #footer -->
<></body>
</html>
MyProfile.jsp
<jsp:directive.page import="java.util.*"/>
<%@ page language="java" pageEncoding="ISO-8859-1"%>
<title>MyProfile.jsp</title>
</head>
<body>
<!--
Design by Free CSS Templates
http://www.freecsstemplates.org
Released for free under a Creative Commons Attribution
2.5 License
Name : Professional
Description: A two-column, fixed-width design with dark
color scheme background.
Version : 1.0
Released : 20081230
-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8" />
<title>Professional by FreeCSSTemplates.org</title>
<link rel="stylesheet" type="text/css" href="style.css"
media="screen" />
</head>
<body>
<div id="wrapper">
<div id="header">
<div id="logo">
<h1>Air Ticket Reservation</h1>
<p>Fly In
Cooooooooollllllllllllll......................</p>
</div>
<!-- end #logo -->
<div id="menu">
<ul>
<li class="active"><a
href="#">Home</a></li>
<li><a href="#">About Us</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
</div>
<!-- end #menu -->
</div>
<!-- end #header -->
<div id="page">
<div id="header-pic"></div>
<div id="content">
<div class="post">
<h1 class="title"><h2>Welcome To My
Profile page......</h2> </h1>
<p class="byline">
<div class="entry">
<html:form
action="login.do?submit=viewProfile1">
<%
ArrayList<String> name=(
ArrayList<String>)request.getAttribute("CUST");
%>
<table>
<tr><td>Customer Name</td><td><html:select
property="cname" size="1">
<%
for(int i=0;i <
name.size();i++)
{
%>
<html:option
value="<%=name.get(i)%>"><%=name.get(i)%></html:option>
<%
}
%>
</html:select></td></tr>
<tr><td>Address</td><td><html:textarea
property="address"/></td></tr>
<tr><td>Gender</td><td><html:text
property="gender"></html:text><br /></td></tr>
<tr><td>Mob.
No</td><td><html:text property="mob"/></td></tr>
<tr><td>Email</td><td><html:text
property="email"/></td></tr>
<br\><tr><td colspan="2"
align="center"><html:submit property="view"
value="View"></html:submit></td></tr> </table>
</html:form>
</div>
<div class="meta">
<p class="links">
</div>
</div>
<div class="post">
<p class="byline">
<div class="entry">
</div>
<div class="meta">
</div>
</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="sidebar-bgtop"></div>
<div id="sidebar-content">
<div id="sidebar-bgbtm">
<ul>
<li>
<h2> </h2>
<ul>
<li><a
href="login.do?submit=editProfile">Edit
Profile</a></li>
<li><a
href="login.do?submit=deleteProfile">Delete
Profile</a></li>
</ul>
</li>
<li>
<ul>
</ul>
</li>
</ul>
</div>
</div>
</div>
<!-- end #sidebar -->
<div style="clear:both; margin:0;"></div>
</div>
<!-- end #page -->
</div>
<div id="footer">
<p>© 2008. All Rights Reserved. Design by <a
href="http://www.freecsstemplates.org/">Free CSS
Templates</a>.</p>
</div>
<!-- end #footer -->
</body>
</html>
</html:html>
LoginAction.java
package pp.action;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import pp.DBLogic;
import pp.form.LoginForm;
public class LoginAction extends DispatchAction {
public ActionForward Submit(ActionMapping
mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws SQLException
{
LoginForm loginForm = (LoginForm) form;
DBLogic dblogic=new DBLogic();
String fname=loginForm.getFname();
String uname=loginForm.getUname();
String pwd=loginForm.getPwd();
String gender=loginForm.getGender();
if(gender==null)
{
while(rs.next())
{ if(type.equals("admin"))
{
return mapping.findForward("admin");
}
if(type.equals("customer"))
{
ResultSet rs1=dblogic.retCId(uname);
Long id=null;
while(rs1.next())
{
id=rs1.getLong("CUSTOMERID");
System.out.println(id);
}
HttpSession
session=request.getSession();
session.setAttribute("CID", id);
return
mapping.findForward("customer");
}}
loginForm.setMsg(msg);
loginForm.reset(mapping, request);
return mapping.findForward("notapp");
}
Public ActionForward viewProfile(ActionMapping
mapping,ActionForm form,HttpServletRequest
request,HttpServletResponse response)throws
SQLException
{
LoginForm loginForm=(LoginForm) form;
DBLogic dblogic=new DBLogic();
HttpSession session=request.getSession(true);
Long id=(Long)session.getAttribute("CID");
ResultSet rs=dblogic.viewProfile(id);
ArrayList<String>
cname= new ArrayList<String>();
while(rs.next())
{
cname.add(rs.getString("NAME"));
System.out.println(cname);
}
request.setAttribute("CUST",cname);
return mapping.findForward("vprof");
}
public ActionForward viewProfile1(ActionMapping
mapping,ActionForm form,HttpServletRequest
request,HttpServletResponse response)throws
SQLException
{
LoginForm loginForm=(LoginForm) form;
DBLogic dblogic=new DBLogic();
HttpSession session=request.getSession(true);
Long id=(Long)session.getAttribute("CID");
ResultSet rs=dblogic.view9(id);
while(rs.next())
{
loginForm.setGender(rs.getString("GENDER"));
loginForm.setAddress(rs.getString("ADDRESS"));
loginForm.setMob(rs.getLong("PHONO"));
loginForm.setEmail(rs.getString("EMAIL"));
}
return viewProfile(mapping,form,request,response);
}
LoginForm.java
package pp.form;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
public class LoginForm extends ActionForm
{ private String ruser;
private String nsub;
private String ncon;
private String suggestion;
private String comments;
private String ffname;
private String type;
private String email;
private String address;
private Long mob;
private String flight;
private String fno;
private String from;
private String to;
private Long atime;
private Long dtime;
private String clas;
private Long available;
private Long price;
private String cname;
private String doj;
private String dob;
private String funame;
private Long nos;
private String mop;
private String dcs;
private String name;
private String feedback;
private String data;
private String announ;
private String opwd;
private String npwd;
private String vnnoun;
private String subject;
private String content;
private String ruse;
private String rpwd;
private String don;
private String snm;
private String epwd;
private String sugg;
private String euse;
private String gender;
private String cpwd;
private String lname;
private String fname;
private String pwd;
private String uname;
private String msg;
private String cnd;
private String Suggestion;
public String getUname() {
return uname;}
public void setUname(String uname) {
this.uname = uname; }
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
return null;}
public void reset(ActionMapping mapping,
HttpServletRequest request)
{ this.address=null;
this.ruser=null;
this.nsub=null;
this.ncon=null;
this.suggestion=null;
this.comments=null;
this.ffname=null;
this.type=null;
this.email=null;
this.address=null;
this.mob=null;
this.flight=null;
this.fno=null;
this.from=null;
this.to=null;
this.atime=null;
this.dtime=null;
this.clas=null;
this.available=null;
this.price=null;
this.cname=null;
this.doj=null;
this.dob=null;
this.funame=null;
this.nos=null;
this.mop=null;
this.dcs=null;
this.name=null;
this.feedback=null;
this.data=null;
this.announ=null;
this.opwd=null;
this.npwd=null;
this.vnnoun=null;
this.subject=null;
this.content=null;
this.ruse=null;
this.rpwd=null;
this.don=null;
this.snm=null;
this.epwd=null;
this.sugg=null;
this.euse=null;
this.gender=null;
this.cpwd=null;
this.lname=null;
this.fname=null;
this.pwd=null;
this.uname=null;
this.msg=null;
this.cnd=null; }
public String getPwd() {
return pwd; }
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getEmail() {
return email;}
public void setEmail(String email) {
this.email = email; }
public String getAddress() {return address;}
DBLogic.java
package pp;
import java.util.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.apache.struts.action.ActionMapping;
import pp.form.LoginForm;
public class DBLogic {
public int Submit(String fname,String uname,String
pwd,String gender,String email,String address,Long
mob)throws SQLException{
int i=0;
Statement st=DBConnect.getStatement();
st.executeUpdate("insert into LOGIN
values(LID_SEQ.nextval,'"+uname+"','"+pwd+"','customer'
)");
i=st.executeUpdate("insert into CUSTOMERDETAILS
values(RID_SEQ.nextval,'"+fname+"','"+address+"','"+ema
il+"','"+gender+"',"+mob+",lid_seq.currval)");
return i;
}
public ResultSet Login(String uname,String pwd,String
type) throws SQLException{
ResultSet
rs=DBConnect.getStatement().executeQuery("select * from
Login where username='"+uname+"' and password='"+pwd+"'
and type='"+type+"'");
return rs;
}
public ResultSet viewProfile(Long id)throws
SQLException
{
ResultSet
rs=DBConnect.getStatement().executeQuery("select * from
CUSTOMERDETAILS where CUSTOMERID="+id+"");
return rs;
}
public ResultSet view9(Long id)throws SQLException
{
ResultSet
rs=DBConnect.getStatement().executeQuery("select * from
CUSTOMERDETAILS where CUSTOMERID="+id+"");
Return
rs;
}
DBConnect.java
package pp;
import java.sql.DriverManager;
import java.sql.*;
public class DBConnect {
public static Statement getStatement()
{
Connection con=null;
Statement st=null;
ResultSet rs=null;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
con=DriverManager.getConnection("jdbc:oracle:thin:@
localhost:1521:XE","bubu","bubu");
st=con.createStatement();
}
catch(Exception err){
System.out.println(err.getMessage());
}
return st;
}
}
7.CONCLUSION
It has been observed that the report generation is easier and now
compared with the manual operation. These are found to be more accurate
because of availability of information from various levels. Design procedure and
output reports are presented in this project report. This design is so flexible that
any new modules can be incorporated easily.
8. APPENDICES
:
9. BIBILIOGRAPHY
Publishing .
Teach Yourself Web-Technologies (I & II) By Ivan Bay Ross
BPB Publication.