0% found this document useful (0 votes)
13 views74 pages

Student Admission Management System Final

The document outlines the design and implementation of a web-based Student Project Allocation and Management with Online Testing System, detailing its functionalities for administrators, professors, and students. It includes sections on system analysis, module descriptions, physical design, and requirements for hardware and software. Additionally, it covers the use of Java and Oracle technologies, along with various diagrams to illustrate system architecture and data flow.

Uploaded by

raju
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views74 pages

Student Admission Management System Final

The document outlines the design and implementation of a web-based Student Project Allocation and Management with Online Testing System, detailing its functionalities for administrators, professors, and students. It includes sections on system analysis, module descriptions, physical design, and requirements for hardware and software. Additionally, it covers the use of Java and Oracle technologies, along with various diagrams to illustrate system architecture and data flow.

Uploaded by

raju
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 74

INDEX

Table of contents
1. Introduction
Introduction
System Analysis
1.2.1 Existing system
1.2.2 Proposed system

2. Module

Module Description

System features

3. Physical Design

Data Flow Diagrams

Data Dictionary

Entity Relationship Diagram

3.4 Requirements

3.4.1 Hardware Requirements

3.4.2 Software Requirements

3.5 Uses-Case Diagrams

3.6 Class Diagrams

3.7 Activity Diagram

2
4. About JAVA

4.1 Features of Java

4.2 JDBC

4.3 JSP

5. About ORACLE

5.1 DBMS

5.2 RDBMS

5.3 SQL

6. Testing

7. Screens

8. Conclusion

9. References

3
I
N
T
R
O
CHAPTER ------- 1 D
U
C
T
I
O
N

4
Student Project Allocation and Management with
Online Testing System

1.Introduction:

This project is aimed at developing a web-based system, which manages


the activity of “Student Project Management” and “Online Testing”. This
system will manage the database and maintain a list of all student groups
that have registered on this site, conduct their online test and shortlist
those students who have passed the eligibility criteria as set by the
professors.

Functional components:
This is a system used by Educational Institutions or other organizations,
which are willing to give student projects. We have three roles in this
system, an administrator, a professor and a student. An administrator
logs into this system, and can register a professor who belongs to that
institution.

Students register in this system and get userid (similar to a website like
Yahoo). A student should register, provide his information (like semester
marks , technologies familiar with, prior project experience etc., ) and
also provide information about his team members. This is saved in a
database.

After registering a student is taken to an Online Testing System. He/she


is allowed to give the Online Test during a scheduled time interval (say of
2-3 weeks as decided earlier by the management). The test is an
online test (say of 40-45minutes) which will be like any other competitive
exam providing 4-5 options. After giving the test student’s test score is
saved in the database.

5
In the same system the professors who have been registered by the
administrator can login and then shortlist students by their academic
performance (percentage as entered by the students during their
registrations) and/or test score. Following is a brief description of the
flow of the system:

The main highlights of the project are:

 The online testing system, which starts automatically and stops after a
particular stipulated time.
 Auto generation of emails as soon as the professor assigns projects to
the student groups, intimating them that they have been assigned
project and need to report to the professor within 1-2 weeks.
 A validation like the student doesn’t give the test twice etc.

6
2. MODULES:

1. Administrator
2. Professor
3. Student
Module Description:

1. Administrator:

 Can login to the system through the first page of the application
 Can create new user account for a professor and assign/change(if
existing user) username and a password

2. Professor
 A registered professor, who is assigned a user name and a
password by the administrator logs in, should enter at least one
project and its description which he is willing to allocate to the
students.
 He/she is given an option to sort and shortlist students by various
criteria such as percentage scored in the online test, academic
performance, technologies familiar with, past experience etc. A
professor can view all students’ information.
 He can see student status, such as whether the student is available or has
been assigned a project by any other professor, and if assigned then by
which professor
 A professor after short-listing students, clicks a button so that he locks
the student group. i.e. no other professor can assign them any projects
now, as they have already been assigned one by this professor, thus
assigning the a status
 A mail is automatically, sent to the student group i.e. all its team
members that they are assigned a project, by this professor

7
2. Student

 A student if he is a new user registers into the system.


 He enters details like his name, age, date of birth, college, B.E.
Percentage up to 6 semesters, his knowledge of the latest
technologies and other prior experience details if any…etc.
 He also enters the name of all his team members and their details
 For the professor, this student would act as the primary interface
between the student group and the professor
 After entering successfully all details he is given a student group code
which he shares with his team members.
 Whenever, a student successfully logs in (after registration) is asked
for for his project code and if successfully entered is taken to a screen
(via link) where he can give an online test
 His/her details are then stored in the database
 In such a fashion he all team members give a test and their respective
scores are list.

8
3. PHYSICAL DESIGN

3.1 DATA FLOW DIAGRAMS


Data flow diagram is a pictorial representation of the system in

which flow of data from one process to another process is described.

A Data Flow is composed of

 Data movement shown by arrows.

 Transformation or process of data shown by named circle or

rounded rectangle.

 Sources and destination of data represented by named rectangles.

 Static storage or data at rest denoted by an open rectangle that is

named.

Data Flow Diagrams are of two types:

1. Physical Data Flow Diagrams:


These are implementation-dependent i.e., they

show the actual devices, departments, people, etc., involved in the

system.

9
2. Logical Data Flow Diagrams:
These diagrams describe the system

independently of how it is actually implemented, they show what takes

places, rather than how an activity is accomplished.

The DFD is intended to represent information Flow but it is not a flow

chart and is not intended decision-making, flow of control, loops and

other procedural aspects of the system. DFD is a useful Graphical tool

and is applied at the earlier stages of requirements analysis. It may be

further refined at preliminary design stage and is used as mechanism for

top-level structural design for software.

The DFD drawn first at a preliminary level is further expanded into

greater details:

 The context diagram is decomposed and represented with multiple

rectangles.

 Each of these rectangles may be decomposed further and given as more

detailed DFD.

 Explanation of DFD

In the Student Project Management with Online Testing the data flow

diagrams are as follows:

10
CONTEXT DIAGRAM:

The Context Diagram is shown in fig (1):

11
Level 1 Diagram For Student

Level 2 Diagram For Student

12
Level 1 Diagram For Administrator

13
Level 1 Diagram For professor

14
Level 2 Diagram For professor

15
DATA DICTIONARY:

The most important aspect of the system is data


design. The data must be organized according to the system
requirements.
The database approach is used to store and
organize the data in developing the system. The database is
an integrated collection of data stored in different types of
tables.
Some general objectives in establishing a database are as
follows:

 Integrating all data.


 Incorporate updations easily.
 Provide data security from unauthorized users.

16
S.No Column_name Data type Description

1 Uname Varchar2 Username

2 Pw d V a r c h a r 2 Pa ssw o r d

17
Database Tables:

Login database

REGISTER DATABASE

S.No Column_name Data type Description

1 Name Varchar2 Student name

2 Age Number Student’s age

3 D_O_B Date Student’s DOB

4 College Varchar2 College name

5 Acad score Number B.Tech %

6 Technologies Varchar2 Languages

18
QUESTION DATABASE

S.No Column_name Data type Description

1 Question no Number Question number

2 Question name Varchar2 Question name

19
QUESTION AND ANSWERS DATABASE

S.No Column-name Data type description

1 Question name Varchar2 Question name

2 Ans_no Number Answer number

3 Question_no Number Question number

4 Ans_name Varchar2 Answer name

20
RESULT DATABASE

S.No Column_name Data type Description

S.No Column_name Data type description

1 Marks Number Test marks

2 U_name Varchar2 User name

21
1 P_id Varchar2 Project

2 P_name Varchar2 Project name

3 P_desc Varchar2 Project


description

4 Tech Varchar2 technologies

22
PROJECT DATABASE
3.3 ENTITY RELATIONSHIP DIAGRAMS

ER Diagrams represent the relationship between the entities. An

ER diagram is composed of

1. Entity is shown by rectangle.

2. Attribute is shown by oval.

3. Relationships with rhombus.

4. Optional is shown by circle.

5. Compulsory with dash.

6. Primary key with underscore.

We can represent Entity Relationship diagrams in two methods. From ER

diagrams as shown in Fig(4) we can conclude Dependency, Association,

Generalization and Realization.

3.4 REQUIREMENTS
3.4.1 SOFTWARE REQUIREMENTS

Front End Tool:

Java Server Pages, Java Script, and HTML

Back End Tool:

Oracle 9i

23
Software Interfaces
Operating System: Windows 2000

Database : Oracle 9i

Server : Tomcat 5.0

Explorer : Microsoft Internet Explorer

3.4.2 HARDWARE REQUIREMENTS

Processor : Pentium- III

Cache : 256 KB Cache

FDD : 1.44 MB Floppy drive

Hard Disk : 40 GB IDE Hard disk

RAM : 256 MB

Monitor : LG

Hardware Interfaces

Keyboard : 105 keys

Mouse : 3 button mouse

24
25
3.5 USECASE DAIGRAM

A Use-Case diagram shows a set of Use-Cases and Actors and their

relationships. Use-Case is a pattern of behavior the system exhibits. Each use

case is a sequence of related transactions performed by an actor and the system

in a dialogue. An actor is someone or some thing that ust interact with the

system under development.

3.6 CLASS DIAGRAMS:

A class diagram shows a set of classes, interfaces, and collaborations and

their relationships.

26
27
3.7 ACTIVITY DIAGRAM:

Start

No

Login

Yes

Test

Result

Stop

An activity diagram is a special kind of a state chart diagram that shows the flow

from activity to activity within a system. Here we are having four forms they are

Complaints, Thieves’ information, Administrator, Police dept.

28
SEQUENCE DIAGRAM:

userinterface administrator professor student

login

enter

test

onlinetest

result

viewresult

29
4. ABOUT JAVA

Now-a-days all are familiar with Internet, the worldwide

network of computers, which connects together thousands of computer

all over the world. These network connections are increasing day by day

in a rapid rate, so the network traffic is increasing at a pulse rate.

Computers connected to the net are from many different manufacturers,

running on different operating systems and they differ in architecture,

computing power and capacity. By considering this point SUN

Microsystems Corporation felt the need for a new programming language

suitable for this heterogeneous Environment and java was the solution.

This breaks barriers between different computers, chips and operating

systems. Using java your application become compatible with all

operating systems.

4.1 FEATURES OF JAVA:-

 Simple

 Secure

 Portable

 Object oriented

 Robust

 Multithreaded

30
Simple:

It is simple for professional programmer to learn & they can use

it effectively. If we already know object oriented programming, then

learning java is very easy. It inherits syntax from c & object oriented

features from c++, so if the user knows c\c++ then it will be a easy way

to do effective java programming.

Secure:

As we know many people are effected by viral infection when they

download an executable file or program. Rather than, virus programs we

have malicious programs that can gather private information, such as

credit card number, bank account balances & passwords by searching the

contents of your computers local file system. Java has a better answer for

this effect i.e., “FIREWALL” between networked application and your

computer.

Portable: As already we have discussed about compatibility of operating

system, computers, chips. In Internet the programs have to be

dynamically downloaded to all the various types of platforms. For this

purpose java program will generate a byte code (which is not a

executable code). Byte code is a highly optimized set of instructions

designed to be executed by java run system, which is called as JVM (Java

Virtual Machine).

31
Object-Oriented:

Java is purely object oriented. The object model in java is simple

and easy to extend, while simple types, such as integers, are kept as

high-performance non-objects.

Robust:

The ability to create robust programs was given a high priority in

the design of java. To gain reliability, java restricts you in a few key areas,

to force you to find your mistakes early in program development. At the

same time, java frees you from having to worry about many of the most

common causes of programming errors. Because java is a strictly typed

language, it checks your code at Compile time. Java is robust for two

reasons; they are Memory management & mishandled exceptional task in

traditional programming environments.

4.2 What is JDBC?

JDBC is a Java API for executing SQL statements. (JDBC is often

thought of as “Java Database Connectivity”) .It consists of a set of classes

and interfaces written in the java programming language.

Using JDBC, it is easy to send SQL statements to virtually any

relational database. In the other words, with the JDBC API, it is not

32
necessary to write to one program to access a Sybase database, another

program to access Informix database, another program to access Oracle

database, and so on. One can write a single program using the JDBC API,

and the program will be able to send SQL statements to the appropriate

database. The combinations of JAVA and JDBC let’s a programmer writes

it once and run it anywhere.

Java, being robust, secure, easy to use, easy to understand, and

automatically downloadable on a network, is an excellent language basis

for database applications.

JDBC extends what can be done in Java. For example, with Java and

the JDBC API, it is possible to publish a web page, which contains an

applet that uses information obtained from a remote database. With more

and more Programmers using the Java Programming language, the need

for easy database access from java is continuing to grow.

MIS managers like the combination of Java and JDBC because it

makes disseminating information easy and economical, Businesses can

continue to use their installed database and access information even if it

is stored on different database management systems. Development time

for new application is short. A programmer can write an application or an

33
update once, put it on the server, and everybody has access to the latest

version. A Low Level API and a Base for Higher-level APIs.

JDBC is a “Low level “ interface that means that it is used to invoke

SQL commands directly, it works very well in this capacity and is easier to

use than other database connectivity APIs, but it was designed to be a

base upon which to build higher level interfaces and tools. A high level

interface is “user-friendly”, using a more understandable or more

convenient API that is translated behind the scenes into a low level

interface such as JDBC. At the time of writing, two kinds of higher level

APIs are under development of top of JDBC.

1) An embedded SQL for Java. At least one vendor plan to build this DBMS

implement SQL, a language designed specifically for use with databases.

JDBC requires that the SQL statements be passed as Strings to Java

methods. The embedded SQL preprocessor then translates this JAVA/SQL

mix into Java with JDBC calls.

2) A direct mapping of relational database tables to Java classes. In this

“object/relational” mapping, each row of the table becomes an instance

of that class, and each column value corresponds to an attribute of that

instance. Programmers can then operate.

34
ODBC is hard to learn. It mixes simple and advanced features

together, and it has complex options even for simple queries. JDBC, on

the other hand, was designed to keep simple things simple while allowing

more advanced capabilities where required.

A Java API like JDBC is needed in order to enable a “Pure Java”

solution. When ODBC is used, the ODBC Driver Manager and drivers must

be manually installed on every client machine. When the JDBC driver is

written completely in Java, however, JDBC code is automatically

installable, portable, and secure on all platforms from network computers

to mainframes.

Understanding the JDBC Architecture

JDBC is an API specification developed by Sun Microsystems

that defines a uniform interface for accessing various relational

databases.JDBC is a core part of the Java platform and is included in

the standard jdbk distributors.

The primary function of the JDBC API is to provide a means for the

developer to issue SQL statements and process the results in a

consistent, database-independent manner. JDBC provides rich,

35
object-oriented access to databases by defining classes and

interfaces that represent objects such as:

1. Database connections

2. SQL statements

3. Result Set

4. Database metadata

5. Prepared statements

6. Binary Large Objects (BLOBs)

7. Character Large Objects (CLOBs)

8. Callable statements

9. Database drivers

10. Driver manager

The JDBC API uses a Driver Manager and database-specific drivers to

provide transparent connectivity to heterogeneous databases. The

JDBC driver manager ensures that the correct driver is used to access

each data source. The Driver Manager is capable of supporting

multiple concurrent drivers connected to multiple heterogeneous

databases. The location of the driver manager with respect to the

JDBC drivers and the servlet is shown in Figure 1.

36
Layers of the JDBC Architecture

A JDBC driver translates standard JDBC calls into a network or

database protocol or into a database library API call that facilitates

communication with the database. This translation layer provides

JDBC applications with database independence. If the back-end

database changes, only the JDBC driver need be replaced with few

code modifications required. There are four distinct types of JDBC

drivers.

37
Type 1 JDBC-ODBC Bridge: Type 1 drivers act as a "bridge" between

JDBC and another database connectivity mechanism such as ODBC.

The JDBC- ODBC bridge provides JDBC access using most standard

ODBC drivers. This driver is included in the Java 2 SDK within the

sun.jdbc.odbc package. In this driver the java statements are

converted to a jdbc statements. JDBC statements calls the ODBC by

using the JDBC-ODBC Bridge. And finally the query is executed by

the database. This driver has serious limitation for many

applications. (see figure 2)

Type 1 JDBC Architecture

Type 2 Java to Native API:

Type 2 drivers use the Java Native Interface (JNI) to make calls

to a local database library API. This driver converts the JDBC calls

into a database specific call for databases such as SQL, ORACLE etc.

This driver communicates directly with the database server. It

requires some native code to connect to the database. Type 2

38
drivers are usually faster than Type 1 drivers. Like Type 1 drivers,

Type 2 drivers require native database client libraries to be installed

and configured on the client machine.

Type 2 JDBC Architecture

Type 3 Java to Network Protocol Or All- Java Driver:

Type 3 drivers are pure Java drivers that use a proprietary

network protocol to communicate with JDBC middleware on the

server. The middleware then translates the network protocol to

database-specific function calls. Type 3 drivers are the most flexible

JDBC solution because they do not require native database libraries

on the client and can connect to many different databases on the

back end. Type 3 drivers can be deployed over the Internet without

client installation Java-------> JDBC statements------> SQL

statements ------> databases.

39
Type 3 JDBC Architecture

Type 4 Java to Database Protocol:

Type 4 drivers are pure Java drivers that implement a

proprietary database protocol (like Oracle's SQL*Net) to

communicate directly with the database. Like Type 3 drivers, they do

not require native database libraries and can be deployed over the

Internet without client installation. One drawback to Type 4 drivers

is that they are database specific. Unlike Type 3 drivers, if your

back-end database changes, you may save to purchase and deploy a

new Type 4 driver (some Type 4 drivers are available free of charge

40
from the database manufacturer). However, because Type drivers

communicate directly with the database engine rather than through

middleware or a native library, they are usually the fastest JDBC

drivers available. This driver directly converts the java statements to

SQL statements.

Type 4 JDBC Architecture

So, you may be asking yourself, "Which is the right type of driver

for your application?" Well, that depends on the requirements of your

particular project. If you do not have the opportunity or inclination to

install and configure software on each client, you can rule out Type 1 and

Type 2 drivers.

However, if the cost of Type 3 or Type 4 drivers is prohibitive, Type 1 and

type 2 drivers may become more attractive because they are usually

available free of charge. Price aside, the debate will often boil down to

whether to use Type 3 or Type 4 driver for a particular application. In this

case, you may need to weigh the benefits of flexibility and

41
interoperability against performance. Type 3 drivers offer your

application the ability to transparently access different types of

databases, while Type 4 drivers usually exhibit better performance and,

like Type 1 and Type 2 drivers, may be available free if charge from the

database manufacturer.

4.2.1 Two-tier and Three-tier Models

The JDBC API supports both two-tier and three-tier models for

database access.

In the two-tier model, a Java applet or application talks directly to

the database. This requires a JDBC driver that communicates with the

particular database management system being accessed. A user’s SQL

statements are delivered to the database and results of those statements

are sent back to the user. The database may be located on another

machine to which the user is connected via a network. This is referred to

as a client/server configuration, with the user’s machine as client and the

machine housing the database as server. The networks can Intranet or it

can be Internet.

42
Java Application

JDBC

Database Server

(Fig(8) : JDBC Two-tier Model)

In the three-tier model, commands are sent to a “middle-tier” of services,

which then sends SQL statements to the database. The database

processes the SQL statements and sends the results back to the middle-

tier, which then sends them to the users. Another advantage is that when

there is a middle-tier, the user can employ an easy-to-use higher level

API, which is translated by the middle tier into the appropriate low-level

calls. Finally in many cases the three-tier architecture can provide

performance advantages.

43
Java Application

Middle Ware
(Business Logics)

Data Base

(Fig(9) JDBC Three- tier model)

44
4.2.2 JDBC Driver types

The JDBC drivers that we are aware of this time generally fit into

one of four categories:

 JDBC-ODBC Bridge plus ODBC Driver:

The Java Soft bridge product provides JDBC access

via ODBC drivers. As a result, this kind of driver is most appropriate on a

corporate network where client installations are not a major problem, or

for application server code written in Java in a three-tier architecture.

 Native-API partly Java driver:

This kind of driver converts JDBC calls into calls on the

Client API for Oracle, Sybase, Informix and DB2.

 JDBC-Net pure Java driver:

This driver translates JDBC calls into a DBMS-

independent net protocol, which is then translated to a DBMS-protocol by

a server. The specific protocol used depends on the vendor.

 Native-protocol Pure Java driver:

This kind of driver converts JDBC calls directly into

the network protocol used by DBMS. Since many of these protocols are

proprietary, the database vendors themselves will be the primary source.

45
4.3 JAVA DATABASE CONNECTION

Java is an ideal language for persistent data storage. By using class

inheritance and data encapsulation, a Java application developed to work

with one type of data storage can be ported or extended to work with

another. An example is an application currently working with an RDBMS

(Relational Database Management System) that is extended to use RMI

(Remote Method Invocation) to store data in a file.

A common misconception with Java is that database access can

occur only with JDBC (Java Database Connectivity) API. Although, the

JDBC provides a handy set of lower level classes to manage database

connections and transactions; it is not a mandatory component. MsqlJava

uses the Socket classes included in the java.net package and the data

input and output stream classes included in the java.io package. If you

wanted to, you could as easily connect to a mSQL database using

MsqlJava instead of the msql JDBC driver.

Additional efforts are underway to establish a standard Java class

API to interface with object DBMS’s (Database Management Systems).

Companies are also creating their own optimized data access classes,

such as Microsoft’s DAO (Data Access Object) classes.

As an alternative to persistent storage of data in database

management systems, Java can also be used to store data to files using

object serialization.

46
The JDK contained core classes grouped together into packages, two of

these (java.net and java.io) provide the classes necessary to connect to a

database and send and receive data. However, most of us do not want to

create a socket and a stream data to and from it to implement a simple

transaction.

The JDBC consists of a basic set of interfaces and a Driver Manager

class used as the basis for several drivers. Drivers provide the

functionality specific to a database or database middleware layer.

Certain limitations became immediately apparent when using the

JDBC.First; the JDBC-ODBC Bridge used native method calls and a DLL

(Dynamic Link Library) to connect to a database, prohibiting its use in

applets accessible through the Internet. Because of applet security issues,

the JDBC limits network connectivity to the same host from which the

applet was downloaded. For use with an applet, databases must be

installed on the same server as the HTTP server – a potential security risk.

A workaround is to have the driver access a middleware layer, which in

turn accesses a database, which located elsewhere. Several companies

have produced this type of drivers.

Object Serialization simply means to store an object in such a way

that the object can be retrieved as an object from the store. Objects can

be manipulated in memory and can reference their members and any

47
associations. With serialization, you can also store these same objects in

a persistent format (such as a system file) for later retrieval.

As a handy way to explain the usefulness of the Database Metadata

interface and to provide a good first step for beginning to work with data

access in Java, the Java dbutil application was created to work with the

JDBC-ODBC Bridge. This tool takes five parameters: the ODBC database

name as defined with the ODBC Administrator, the username, the

password (sorry the password is not encrypted), the information

category, and the information category option. Among the options the

existing tool can provide is information about the database, its

procedures, tables’ columns and transactions.

The JDK1.1 documentation contains a list of the methods and

variables for use with the Database Metadata interface, which are too

numerous to list here. Use the JDK documentation to modify the tool to

suit your needs or to have a little fun with some very simple coding that

provides very useful results.

The Java Database Connectivity (JDBC) API includes classes that can

handle most database access needs. For simple select statements to

processing the results of a complex stored procedure to access more

than one database at a time, the JDBC provides the functionality most

48
applications need. Connecting to a Database and making Simple

QueriesOne very important aspect of the JDBC is how easy is to use. To

connect to a database, make a query, and process the result takes not

more than a few lines of code, as the following sections demonstrate.

4.4 JAVA SERVER PAGE (JSP)

Java Server Pages™ (JSP) is a new technology for web application

development that has received a great deal of attention since it was first

announced.

49
Why is JSP so exciting?

1. JSP is Java-based, and Java is well-suited for enterprise computing.

In fact, JSP is a key part of the Java 2 Enterprise Edition (J2EE)

platform and can take advantage of the many Java Enterprise libraries,

such as JDBC, JNDI, and Enterprise Java Beans.

2. JSP supports a powerful model for developing web applications that

separates presentation from processing..

In the early days of the Web, the only tool for developing dynamic

web content was the Common Gateway Interface (CGI). CGI outlined how

a web server made user input available to a program, as well as how the

program provided the web server with dynamically generated content to

send back. CGI scripts were typically written in Perl. (In fact, CGI Perl

scripts still drive numerous dynamic web sites.) However, CGI is not an

efficient solution. For every request, the web server has to create a new

operating-system process, load a Perl interpreter and the Perl script,

execute the script, and then dispose of the entire process when it's done.

To provide a more efficient solution, various alternatives to CGI have

been added to programmers' toolboxes over the last few years: FastCGI,

for example, runs each CGI program in an external permanent process (or

a pool of processes). In addition, mod_perl for Apache, NSAPI for

Netscape, and ISAPI for Microsoft's IIS all run server-side programs in the

same process as the web server itself. While these solutions offer better

50
performance and scalability, each one is supported by only a subset of

the popular web servers.

The Java Servlet API, introduced in early 1997, provides a solution

to the portability issue. However, all these technologies suffer from a

common problem: HTML code embedded inside programs. If you've ever

looked at the code for a servlet, you've probably seen endless calls to

out.println( ) that contain scores of HTML tags.

for the individual developer working on a simple web site this

approach may work fine, but it makes it very difficult for people with

different skills to work together to develop a web application. This is

becoming a significant problem. As web sites become increasingly

complex and are more and more critical to the success of an

organization, the appearance and usability of the web interface becomes

paramount. New client technologies, such as client-side scripts and

DHTML, can develop more responsive and interactive user interfaces,

style sheets can make it easier to globally change fonts and colors, and

images can make the interface more appealing. At the same time, server-

side code is getting more complex, and demands for reliability,

performance, and fault tolerance are increasing. The growing complexity

of web applications requires a development model that allows people

with different skills to cooperate efficiently.

Java Server Pages provides just such a development model,

allowing web page authors with skills in graphics, layout, and usability to

51
work in tandem with programmers who are experienced in server-side

technologies such as multithreading, resource pooling, databases, and

caching. While there are other technologies, such as ASP, PHP and

ColdFusion, that support similar development models, none of them

offers all the advantages of JSP.

An Overview of JSP

Java Server Pages™ technology is the Java™ technology in the J2EE

platform for building applications containing dynamic Web content such

as HTML, DHTML, XHTML and XML. The Java Server Pages technology

enables the authoring of Web pages that create dynamic content easily

but with maximum power and flexibility.

The Java Server Pages technology provides a textual description for

the creation of a response from a request. The technology builds on the

following concepts:

 Template Data

Substantial portions of dynamic content are actually fixed. The JSP

technology allow for the natural manipulation of this data.

 Addition of Dynamic Data

The JSP technology allows the addition of dynamic data to the

template data in a way that is simple yet powerful.

52
 Encapsulation of Functionality
The JSP technology provides two related mechanisms for the

encapsulation of functionality: the standard Java Beans component

architecture and the tag library mechanism.

 Good Tool Support

The JSP technology has features that enable the creation of good

authoring tools. The result is a flexible and powerful server-side

technology.

 Benefits of the Java Server Pages Technology

The Java Server Pages technology offers a number of benefits:

Write Once, Run Anywhere™ properties

The Java Server Pages technology is platform independent, both in

its dynamic Web pages, Web servers, and its underlying server

components. You can author JSP pages on any platform, run them on any

Web server or Web enabled application server, and access them from any

Web browser.

 High quality tool support

The Write Once, Run Anywhere properties of JSP allows the user to

choose best-of-breed tools. Additionally, an explicit goal of the Java

Server Pages design is to enable the creation of high quality portable

tools.

 Separation of Roles

53
JSP supports the separation of roles: developers write components

that interact with server-side objects.

 Reuse of components and tag libraries

The Java Server Pages technology emphasizes the use of reusable

components such as Java Beans™ components, Enterprise Java Beans™

components and tag libraries.

 Separation of dynamic and static content

The Java Server Pages technology enables the separation of static

content from dynamic content that is inserted into the static template.

 Support for scripting and actions

The Java Server Pages technology supports scripting elements as

well as actions. Actions permit the encapsulation of useful functionality in

a convenient form that can also be manipulated by tools; scripts provide

a mechanism to glue together this functionality in a per-page manner.

54
4.4.1 JSP ARCHITECTURE

In the process of dynamic content generation, Sun Microsystems as

introduced with a new concept as “Logic separation” from client.

Client1

Client2 LOGICS
Server

Client3

Logic which is required is written at one place and can be accessed by all

the clients which are at different places when they require. So, in order to

implement this, we have two Architectures known as

 Model 1

 Model 2

55
Model-1 Architecture

In Model-1 Architecture, presentation logics and Bussiness logics

are combined. When these two are combined each presentation logic

requires copy of business logic so that the model and server should work

towards this, such thing is time and resource consume, so in order to

overcome this Model 2 Architecture has been introduced.

Model-1 Architecture is called as Java Bean.

Model

Request processing
Data validation
View Business logic processing
server
n- clients Data manipulation
Response generation

Fig (10)

Model-2 Architecture

Model-2 Architecture is also called as Java Strut. In this

Model, presentation and business logics are separated. We have three

parts in this,

 View

 Controller

 Model

56
Model:

Contains business logics which represent application state

along with database.

View:

JSP acts a view which receives data from the model this view

doesn’t contain any data manipulation logics.

Controller:

Takes request from client, process the Model and provide

information to different JSP page and passing control to different views.

Controller

Data
Base
Browser

View Model

Fig (12)

57
5. ABOUT ORACLE

5.1 Introduction to Database Management System

(DBMS)
A Database is an integrated collection of user related

data stored with minimum redundancy, serves many users/applications

quickly and efficiently.

A database system is basically a computerized record

keeping system, i.e. it is a computerized system whose overall purpose is

to maintain information and make that information available on demand.

DBMS is a collection of inter-related data and set of

programs that allow several users to access and manipulate data. Its main

purpose is to provide users with an abstract view of the data, i.e. the

system hides certain details of how the data is stored and maintained.

Database Management System is divided into 4 main components

 Database

 Hardware

 Software

 User

58
Database:

It consists of collection of persistent data that is used by the

application system.

Hardware:

The processor(s) and associated main memory that are used to

support the execution of database system software..

Software:

The layer between the physical database and the users that

handles all requests from the user for access to the database.

User:

There are three types of users

 Application Programmers

 End User

 Database Administrator (DBA)

5.2 TYPES OF DBMS

There are four major categories of DBMS data models.

 Hierarchical

 Network

 Inverted

 Relational

59
5.2.1 RELATIONAL DATABASE MANAGEMENT SYSTEMS

Database Management System has evolved from hierarchical to

network to relational models. Today, the most widely accepted database

model is the relational model. The relational database management

system uses only its relational capabilities to manage the information

stored in the database. The relational model has three different aspects.

 Structures

 Operation

 Integrity rules

Structures:

They are well-defined objects that store the data of a database

structure and the data contained within them can be manipulated by

operations.

Operations:

They are clearly defined actions that allow users to manipulate the

data and structures of a database. The operations on a database must

adhere to a predefined set of integrity rules.

Integrity rules:

They are laws that govern which operations are allowed on the data

and structures of a database. Integrity rules protect the data and the

structures of a database.

60
A DBMS can be regarded as relational only if it obeys a set of 12

rules formulated by Dr.E.F.Codd These rules define the scope and

functionality of a relational database.

There is a single overall rule called “Zero Rule” which is a

foundation rule that covers all other rules. It states that

“ Any truly relational database must be manageable entirely through its

relational capabilities”.

The twelve rules are as follows:

Rule 1: The information rules

Rule 2: The guaranteed access rule

Rule 3: The systematic treatment of null values

Rule 4: The database description rule

Rule 5: The comprehensive sub-language rule

Rule 6: The view update rule

Rule 7: The insert, update and delete rule

Rule 8: The physical data independence rule

Rule 9: The logical data independence rule.

Rule 10: The integrity independence rule.

Rule 11: The distribution independence rule.

Rule 12: The no subversion rules.

61
5.2.3 ADVANTAGES OF RDBMS:

 Data redundancy can be reduced.

 Data independence

 Ensure access and integrity

 Sharing data

 Recovery from failure

 Uniform security and privacy through password, view and

automatic backup

5.2.4 DISADVANTAGES OF RDBMS:

 Cost of software/hardware

 Problems associated with centralization

 Complexity of backup and recovery

62
5.2.5 COMPARISION OF DBMS AND RDBMS:

S.NO DBMS RDBMS

1 The relation between two files Relationship can be specified


Has to be maintained While creating structure
programmatically, Itself.
If required.

2 Client/Server architecture is not Most RDBMS support


Normally supported. Client/server architecture.

3 Distributed database is not Supports distributed databases.


Supported.

4 Least security: anyone can Multiple level of security


Access records. Maintained
Login security
Command level security
Object level security

5 Does not follow Codd’s rules Follows many of the Codd’s


Rules.

63
5.3 STRUCTURED QUERY LANGUAGE:
SQL (pronounced “SEQUEL”) stands for Structured Query Language,

which is used to communicate with relational database, which are in turn

a set of related information stored in the form of tables.

SQL is a non-procedural language because it processes sets of

records rather than just one data at a time and also provides automatic

navigation to the data. Here one can manipulate a set or rows rather than

one at a time. SQL commands accept a sets or rows as input and return

sets as outputs. The set property of SQL allows the results of one SQL

statement to be used as input to another. Here one need not specify the

access method of the data.

SQL is utilized as the communication language with the database

among the database users like database administrators, System

administrators, security administrators and application programmers.

SQL provides commands for a variety of tasks including:

1. Inserting, updating, and deleting rows in an object.

2. Creating, replacing, altering and dropping objects.

3 .Controlling access to the database and its objects.

4. Guaranteeing database consistency and integrity.

The Commands in SQL is subdivided according to their functions as

follows:

64
 Data Definition Language (DDL) - create, alter, drop, truncate,

rename.

 Data Manipulation Language (DML) – insert, update, delete

 Data Control Language (DCL) – grant, revoke

 Data Retrival Language (DRL) - select

 Transaction Control Language (TCL) – commit, savepoint, rollback

SQL*PLUS is a program or a tool available for working with an

ORACLE database. It allows the user to:

1. Create tables in a database.

2. Stores information in the tables.

3. Changes information in the tables.

4. Retrieve the information in the form we choose, performing

calculations on it and combining it in new ways.

5. Maintain the database itself.

5.4 WHY RDBMS?

Any organization as growing the corresponding data volume and

persons involved in business will increase. To handle this high volume

data with greater efficiency it is not possible with normal database

applications. Existing databases like FoxPro, DBase are designed for small

organizations. As the volume grows the performance is deteriorated.

These database applications are lack of security, frequent database

corruptions that cause a very problem to organizations. The design of

65
RDBMS architecture is very powerful having the features like high data

security, automatic user handling, automatic back up, restore facilities,

capability to handle large volumes of data, powerful database concepts,

adoption of relational algebra, to increase the access speed during

processes, powerful distributed database concept to provide online

systems.

5.4.1 Why Oracle?

Even though the architecture of all RDBMS is same but the features

are different from different RDBMS. Oracle, Sybase, Informix. As per the

features concerned all the RDBMS can be related as it. But with the

easiness, demand it is better to go for Oracle.

Because the professional availability in Oracle is high compared to

other RDBMS professionals. Because the availability is high the manpower

cost will be less compared to Sybase professionals, Informix

professionals. Even the support from the vendors in also high in Oracle

environment rather than other RDBMS.

Oracle9i is regarded as the RDBMS because it is the most widely

acclaimed package across the globe with its 100% client-server

architecture. Oracle has in-built features like data integrity, security,

reverie and backup and total GUI based presentation and can easily and

efficiently support small to very large scale applications.

66
DATABASE CONNECTIONS:

The database connection string is the only JDBC component that

references the particular database being accessed. You must provide a

specific driver connection string that uses the protocol defined for the

driver. The JDBC Driver Manager class to determine which driver to load

uses the protocols currently maintained by Java Soft.

A Query returns a Result set object. This object contains the results

of the query in a form of that can be accessed by the application. If the

query has no results, the Result Set object contains no rows. Otherwise it

contains rows of data matching the query (up to the limit specified by the

database). If the database supports doing so, you can set the maximum

number of rows using the Statement class method setMaxRows ().

MORE COMPLEX USES OF JDBC:

Occasionally a database developer has to program for more

complex database access situations. You may want to create a statement

and then execute it many times, or call a stored procedure that returns

multiple Result Sets, or issue a dynamic SQL statement. This section

covers some techniques for handling these types of statements.

Two of the classes discussed Prepared Statement and Callable

Statement, are extended classes: the former is an extension of Statement

and the former is an extension of Prepared Statement.

67
PROBLEMS USING WITH CURSORS:

The execute () method requires the database to support cursors,

which enable processing of multiple result sets. The execute () method

also requires the database and the database driver to support

maintaining an open connection after a transaction. If the database does

not support these features, the execute () method can result in an error

such as invalid cursor state (as happened when we ran the sample7

application with both the Sybase SQL anywhere ODBC Driver and the

Microsoft Access ODBC Driver).

WORKING WITH MULTIPLE DATABASES

The last Java application that was created in this chapter is one that

refreshes a table in an mSQL database with the contents of a table in a

Microsoft Access database.

68
6. TESTING

What is Testing?

A process of executing a program with the explicit intention of

finding errors, that is making the program fail.

Software Testing:

It is the process of testing the functionality and correctness of

software by running it. Process of executing a program with the intent of

finding an error.

A good test case is one that has a high probability of finding an as

yet undiscovered error. A successful test is one that uncovers an as yet

undiscovered error. Software Testing is usually performed for one of two

reasons:

 Defect detection

 Reliability estimation

Black Box Testing:

Applies to software systems or module, tests functionality in terms

of inputs and outputs at interfaces.Test reveals if the software function is

fully operational with reference to requirements specification.

69
White Box Testing:

Knowing the internal workings i.e., to test if all internal operations

are performed according to program structures and data structures.

To test if all internal components have been adequately exercised.

Software Testing Strategies:

A strategy for software testing will begin in the following order:

1. Unit testing

2. Integration testing

3. Validation testing

4. System testing

Unit testing

It concentrates on each unit of the software as implemented in

source code and is a white box oriented. Using the component level

design description as a guide, important control paths are tested to

uncover errors within the boundary of the module. In the unit testing,

The step can be conducted in parallel for multiple components.

Integration testing:

Here focus is on design and construction of the software

architecture. Integration testing is a systematic technique for

constructing the program structure while at the same time conducting

70
tests to uncover errors associated with interfacing. The objective is to

take unit tested components and build a program structure that has been

dictated by design.

Validation testing:

In this, requirements established as part of software requirements

analysis are validated against the software that has been constructed i.e.,

validation succeeds when software functions in a manner that can

reasonably expected by the customer.

System testing:

In this software and other system elements are tested as a

whole.

71
7. SCREENS

72
73
8. CONCLUSION
Intensive care has been taken by us to meet all the
requirements of the client .Each module has undergoes stringent
testing procedures and the integration testing activity has been
performed for reach module.

After completion, execution and successfully demonstration ,we


confirm that the product has reached the client requirements and is
already for launch .Finally we conclude that the project stands up in
maintaining its solve motive betterment to the society and work for a
social cause .

74
9. REFERERNCES

WEBSITE REFERENCES

 www.java.sun.com

 www.webmasterworld.com

 www.visualbuilder.com

 www.javaworld.com

 www.thescripts.com

 www.youcanlearnseries.com

75

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy