[go: up one dir, main page]

0% found this document useful (0 votes)
30 views71 pages

Suspicious Email Detection Project Report

The aim of this project is to suspect the E-mails which consist of offensive, antisocial elements and block them which helps in identifying the suspicious user. In this project, suspicious users are identified by determining the keywords used by him/her. The keywords such as bomb, RDX. are found in the mails which are sent by the user.

Uploaded by

Kamal Acharya
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)
30 views71 pages

Suspicious Email Detection Project Report

The aim of this project is to suspect the E-mails which consist of offensive, antisocial elements and block them which helps in identifying the suspicious user. In this project, suspicious users are identified by determining the keywords used by him/her. The keywords such as bomb, RDX. are found in the mails which are sent by the user.

Uploaded by

Kamal Acharya
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/ 71

AN

INTERNSHIP REPORT
ON
SUSPICIOUS EMAIL DETECTION SYSTEM
PROJECT
BY
KAMAL ACHARYA
(Tribhuvan University)

Date:2022/04/02

1|Page
TABLE OF CONTENTS
1. Abstract
2. Introduction
3. System Analysis
Existing system
Problem Definition
Proposed System
Requirement Analysis
Requirement Specifications
Feasibility study
4. System Design
4.1 Project Modules
4.2 Data Dictionary
4.3 Data Flow Diagrams
4.4 E-R Diagrams
4.5 Hardware And Software Requirements
5. System Testing
6. Software Tools Used
7 Technical Notes
7.1 Introduction To Real-time programming
7.2 Introduction to OOPS and Windows
7.3 Introduction to Java
8. Screens
9. Conclusion
10. Bibliographic

1|Page
SUSPICIOUS EMAIL DETECTION
Abstract
The aim of this project is to suspect the E-mails which consist of offensive, anti-
social elements and block them which helps in identifying the suspicious user.

In this project, suspicious users are identified by determining the keywords


used by him/her. The keywords such as bomb, RDX. are found in the mails which are sent
by the user. All these blocked mails are checked by the administrator and identify the users
who sent such mails.

This is very useful in real-time scenario in which you can resume the anti-social activities.

It consists 5 modules:

Modules in the Suspicious E-mail detection

 Login Module

 Registration Module

 Administration Module

 User Module

 Mailing Module

1) Login Module:

This module is used by administrator and users (who are authenticated) to login into
the secure mail. The login details of the specified person will be entered and hence can
enter into the secure mail.

2) Registration Module:

This module is used by the unauthenticated users who are unregistered. The users must
register themselves such that they can login into the secure mail.

2|Page
3) Administration Module:

This module is used by the administrator to perform the functions like managing the
keywords, entering new keywords and to check out the block list of the discarded mails.

4) User Module:

This module is used by the users to do operations like composing mail, checking out the
mails in inbox and finally sending the mails to the authenticated users by attaching a
message.

5) Mailing Module:

This module is used by the users perform mailing system. The mailing system consists
of composing the mails, sending the mails and checking out the mails in inbox.

1. INTRODUCTION:

1.2 About the project

Suspicious email detection is a kind of mailing system where suspicious users are identified by
determining the keywords used by him/her. The keywords such as bomb,RDX., are found
in the mails which are sent by the user. All these blocked mails are checked by the
administrator and identify the users who sent such mails.

This is very useful in real-time scenario in which you can resume the anti-social activities.It
consists 5 modules:
The users of this system are compose mails to the other users who are authenticated
already. If the composed mails consist of the keywords such as bomb, RDX, Terrorist etc.
These suspected mails are blocked or discarded by the administrator so that they cannot be
forwarded. This system is designed such a way that the users can easily interact with the
system with minimum knowledge to browse the internet.

The Second chapter explains the exact Definition of the Problem and evolves out
with the Feasibility Study of the product/part.

The Third chapter is System Analysis which deals about the Hardware and
Software Specifications, and Software Requirement Specification, under this SRS Formal
Description and Module Description.

3|Page
The Fourth chapter describes the System Design, under this two levels of designs,
they are
 High level design (Data design, functional & interface design).
 Low level design (Pseudo code & detail description of functions).
The Fifth chapter fully deals about Testing and Implementation of the whole
project.
The Sixth chapter deals the Conclusion and Foreseeable Enhancements of the
system.
The Seventh chapter deals about the Bibliography of this Project.
The Eight chapter is the final one which deals about the language used, tools used,
Screen layouts and Reports

4|Page
2. PROBLEM DEFINITION AND FEASIBILITY ANALYSIS

2.1 Definition of the problem

To create or develop a new system first we have to study the prior system, Analysis
difficult problems faced by the operator of that system. System Analysis therefore
understands such problems and proposes a new system in which the above problems are
rectified.

Existing system

In the existing system, the mails are sent to the authenticated users who are

intended to be received.

Some defects in existing system are:


 Suspicious mails cannot be detected.

 Offensive users cannot be identified.

Proposed System
In the proposed system the suspicious users are detected and the offensive mails are
blocked.

Features of proposed system:

 This helps in finding out anti social elements.

 This provides the security to system which adapts it.

 This also helps the intelligence bureau, crime branch etc.,

Module Description:
The proposed system is developed by using five modules:

 Login Module

 Registration Module
5|Page
 Administration Module

 User Module

 Mailing Module

Login Module:
This module is used by administrator and users (who are authenticated) to login into
the secure mail. The login details of the specified person will be entered and hence can
enter into the secure mail.

Registration Module:
This module is used by the unauthenticated users who are unregistered. The users must
register themselves such that they can login into the secure mail.

Administration Module:
This module is used by the administrator to perform the functions like managing the
keywords, entering new keywords and to check out the block list of the discarded mails.

User Module:
This module is used by the users to do operations like composing mail, checking out the
mails in inbox and finally sending the mails to the authenticated users by attaching a
message.

Mailing Module:
This module is used by the users perform mailing system. The mailing system consists
of composing the mails, sending the mails and checking out the mails in inbox.

Module connectivity:
In the administrator module the administrator will be responsible for blocking the
mails and managing the keywords.
In the client module, different clients who are registered can compose the mails and
can send the mails to the registered users only.

6|Page
2.2 Feasibility study
It is necessary and prudent to evaluate the feasibility of a project at the earliest
possible time. There may be different ways of checking whether a system is feasible or not.
The following feasibility studies were performed to gauge the feasibility of the system.

2.2.1 Operational Feasibility


In this test, the operational scope of the system is checked. The system under
consideration should have enough operational reach. It is observed that the proposed
system is very user friendly and since the system is built with enough help, even persons
with little knowledge of windows can find the system very easy.

2.2.2 Technical Feasibility

This test includes a study of function, performance and constraints that may affect
the ability to achieve an acceptable system. This test begins with an assessment of the
technical viability of the proposed system. One of the main fusers to be accessed is the
need of various kinds of resources for the successful implementation for the proposed
system.

2.2.3 Economical Feasibility

An evaluation of development cost weighed against the ultimate income or benefit


derived from the development of the proposed system is made. Care must be taken that
incurred in the development of the proposed of the system should not exceed from the
system. The income can be in terms of money or goodwill, since the software brings in
both, the system is highly viable.

7|Page
3. SYSTEM ANALYSIS
3.1 Hardware and Software Specifications
The development of this project deals with the following environment
 Hardware requirements
 Software requirements

Hardware Requirements:
The selection of hardware is very important in the existence and proper working of
any software. In the selection of hardware, the size and the capacity requirements are also
important.
The suspicious email detection can be efficiently run on Pentium system with at
least 128 MB RAM and Hard disk drive having 20 GB. Floppy disk drive of 1.44 MB and
14 inch Samsung color monitor suits the information system operation.(A Printer is
required for hard copy output).
 Pentium processor -------- 233 MHZ or above
 RAM Capacity -------- 256MB
 Hard Disk -------- 20GB

Software Requirements:
One of the most difficult tasks is that, the selection of the software, once system
requirement is known is determining whether a particular software package fits the
requirements. After initial selection further security is needed to determine the desirability
of particular software compared with other candidates. This section first summarizes the
application requirement question and then suggests more detailed comparisons.

 Operating System :: Windows NT/2000

 Server Side :: JSP with Tomcat Server

 Client Side :: HTML ,JavaScript

 Services :: JDBC

 Database :: Oracle 10g/XE

 Integrated Development Environment :: My Eclipse 6.0

8|Page
3.Fields Specification

Administrator: login name, password, login type.


User: user name, password.

3.2.1 Formal Description


Module Description
The main modules of this “suspicious email detection” are broadly divided into
five. They are

 Login Module

 Registration Module

 Administration Module

 User Module

 Mailing Module

Login Module:
This module is used by administrator and users (who are authenticated) to login into
the secure mail. The login details of the specified person will be entered and hence can
enter into the secure mail.

Registration Module:
This module is used by the unauthenticated users who are unregistered. The users must
register themselves such that they can login into the secure mail.

Administration Module:
This module is used by the administrator to perform the functions like managing the
keywords, entering new keywords and to check out the block list of the discarded mails.

User Module:
This module is used by the users to do operations like composing mail, checking out the
mails in inbox and finally sending the mails to the authenticated users by attaching a
message.
9|Page
Mailing Module:
This module is used by the users perform mailing system. The mailing system consists
of composing the mails, sending the mails and checking out the mails in inbox.

10 | P a g e
4. SYSTEM DESIGN

Design Description:

Design is essentially a blue print or it acts as a bridge between the requirement


specification and the final solution for satisfying the requirements.
Based on the work-flow described above we can draw the following conclusions for
the Software System that has to be developed:
 The System needs to be a web-based system so that it allows the admin & clients to
access the secure mail over the Internet.
 Being a web-based system, it enables the users to send e-mails to other users who are
already registered. An added advantage is since the e-mail is delivered instantly, there
could be instant responses from the admin if any suspicious emails are detected.
 The whole process depends on communications between admin & the users. If all these
communications are done through a web-based system, then the time period for the
whole process can be considerably brought down.
 The System needs to store the details of all the users.
 The System needs to store the details of all the information (sent mails, composed mails
etc) held by all the users.
 The System needs to store the details of all the requirements held by the different users.
 Since it is a web-based system, a Login authorization should be provided so that Admin
and users will be able to lookup & use options that are specific to them.
 The System should allow the users to enter their details.
 The System should provide an option to generate an user Report.
 The System should provide an option to generate block mails Report.
 The System should provide an option to generate selected users Report.

4.1 High level design

Data design

Table Name: Users

Description: This table is used to maintain the registered users information.

11 | P a g e
SL.NO FIELD NAME DATA TYPE
DESCRIPTION

1 USERNAME Varchar2(10) This is unique identifier given to an


user to identify him uniquely. This is
the Primary Key of the table.
2 PASSWORD Varchar2(20) This the password of the user

Table Name: block list


Description: This table is used for client’s mailing information.

SL.NO FIELD DATA TYPE


DESCRIPTION
NAME
1 MAIL TO Varchar2(10) To whom the user wants to send the mails

2 MAIL FROM Varchar2(20) From whom the users got the mails.

3 SUBJECT Varchar2(40) The subject present in the mail.

4 MESSAGE Varchar2(40) The message or the data present in the mail.

Table Name: keywords


Description: This table consists of the keywords of the mailing system.

SL.NO FIELD DESCRIPTION


NAME
1 keyword The suspected keywords of the mails.

12 | P a g e
OVERVIEW OF JAVA TECHNOLOGY

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. Jvms
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 datatypes .
 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 AND INTERNET


Java is strongly associated with internet and known as internet programming
language. Internet users can use java to create applet programs and run them locally using
java enabled browser search as hot java. Applets can be downloaded from remote machine
via internet and run it on local machine .

13 | P a g e
JAVA AND WORLD WIDE WEB
World wide web is an open ended information retrieval system designed to be used
in the distributed environment. This system contains web pages that provide both
information and controls. We can navigate to a new web page in any direction. This is
made possible worth HTML java was meant to be used in distributed environment such as
internet. So java could be easily incorporated into the web system and is capable of
supporting animation graphics , games and other special effect. The web has become more
dynamic and interactive with support of java. We can run a java program on remote
machine over internet with the support of web .

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 .

JAVA VIRTUAL MACHINE


When we compile the code, java compiler creates machine code (byte code) for a
hypothetical machine called java virtual machine (jvm). The jvm will execute the byte code
and overcomes the issue of portability . the code is written and compile for one machine
and interpreted all other machines . this machine is called java virtual machine .

PARADIGM OF JAVA
 Dynamic down loading applets(small application programs);
 Elimination of flatware phenomenon that is providing those features of a
product that user needs at a time. The remaining features of a product can
remain in the server.
 Changing economic model of the software
 Up-to-date software availability
14 | P a g e
 Supports network entire computing
 Supports CORBA & DCOM

ABOUT HTML
HTML (hyper text markup language) is a language used to create hyper text
documents that have hyper links embedded in them . it consists of tags embedded in the
text of a document with HTML. We can build web pages or web document s. it is basically
a formatting language and not a programming language. The browser reading the document
interprets mark up tags to help format the document for subsequent display to a reader.
HTML is a language for describing structured documents. HTML is a platform
independent. WWW(world wide web) pages are written using HTML. HTML tags control
in part the representation of the WWW page when view with web browser. The browser
interpretes HTML tags in the web document and displays it. Different browsers show data
differently. Examples of browsers used to be web pages include:
 Netscape
 Internet Explorer

JAVA SCRIPT
Java script is a general purpose , prototype based , object oriented scripting
language developed jointly by sun and netscape and is meant for the WWW . it is designed
to be embedded in diverse applications and systems , with out consuming much memory .
java script borrows most of its syntax from java but also inherits from awk and perl , with
some indirect influence from self in its object prototype system.
Java scripts dynamically typed that is programs donot declare variable types, and
the type of variable is unrestricted and can change at runtime . source can be generated at
run time and evaluated against an arbitrary scope. Typical implementations compile by
translating source into a specified byte code format, to check syntax and source
consistency. Note that the availability to generate and interprate programs at runtime
implies the presence of a compiler at runtime.
Java script is a high level scripting language that does not depend on or expose
particular machine representations or operating system services. It provides automatic
storage management, typically using a garbage collector.

15 | P a g e
FEATURES:
 Java script is embedded into HTML documents and is executed with in
them.
 Java script is browser dependent
 Javascript is an interpreted languaged that can be interpreted by the browser
at run time .
 Java script is loosely typed language
 Java script is an object based language.
 Java script is an Eent-Driven language and supports event handlers to
specify the functionality of a button.

ADVANTAGES
1. java script can be used for client side application
2. java script provides means to contain multiframe windows for
presentation of the web.
3. java script provides basic data validation before it is sent to the
server. Eg : login and password checking or whether the values
entered are correct or whether all fields in a from are filled and
reduced network traffic
4. it creates interactive forms and client side lookup tables .

16 | P a g e
ORACLE

INTRODUCTION:
Oracle is a relational database management system, which organizes data in the form
of tables. Oracle is one of many database servers based on RDBMS model, which manages
a seer of data that attends three specific things-data structures, data integrity and data
manipulation. With oracle cooperative server technology we can realize the benefits of
open, relational systems for all the applications. Oracle makes efficient use of all systems
resources, on all hardware architecture; to deliver unmatched performance, price
performance and scalability. Any DBMS to be called as RDBMS has to satisfy
Dr.E.F.Codd’s rules.

DISTINCT FEATURES OF ORACLE:

 ORACLE IS PORTABLE:

The Oracle RDBMS is available on wide range of platforms ranging from PCs to super
computers and as a multi user loadable module for Novel NetWare, if you develop
application on system you can run the same application on other systems without any
modifications.

 ORACLE IS COMPATIBLE:

Oracle commands can be used for communicating with IBM DB2 mainframe RDBMS
that is different from Oracle, that is Oracle compatible with DB2. Oracle RDBMS is a
high performance fault tolerant DBMS, which is specially designed for online
transaction processing and for handling large database applications.

JDBC DRIVERS:

The JDBC API only defines interfaces for objects used for performing
various database-related tasks like opening and closing connections, executing SQL
commands, and retrieving the results. We all write our programs to interfaces and not
17 | P a g e
implementations. Either the resource manager vendor or a third party provides the
implementation classes for the standard JDBC interfaces. These software implementations
are called JDBC drivers. JDBC drivers transform the standard JDBC calls to the external
resource manager-specific API calls. The diagram below depicts how a database client
written in java accesses an external resource manager using the JDBC API and JDBC
driver:

Depending on the mechanism of implementation, JDBC drivers are broadly classified into
four types.

TYPE1:

Type1 JDBC drivers implement the JDBC API on top of a lower level API like ODBC.
These drivers are not generally portable because of the independency on native libraries.
These drivers translate the JDBC calls to ODBC calls and ODBC sends the request to
external data source using native library calls. The JDBC-ODBC driver that comes with
the software distribution for J2SE is an example of a type1 driver.

18 | P a g e
TYPE2:

Type2 drivers are written in mixture of java and native code. Type2 drivers use vendors
specific native APIs for accessing the data source. These drivers transform the JDBC calls
to vendor specific calls using the vendor’s native library.
These drivers are also not portable like type1 drivers because of the dependency on native
code.

TYPE3:

Type3 drivers use an intermediate middleware server for accessing the external data
sources. The calls to the middleware server are database independent. However, the
middleware server makes vendor specific native calls for accessing the data source. In this
case, the driver is purely written in java.

TYPE4:

Type4 drivers are written in pure java and implement the JDBC interfaces and translate the
JDBC specific calls to vendor specific access calls. They implement the data transfer and
network protocol for the target resource manager. Most of the leading database vendors
provide type4 drivers for accessing their database servers.

DRIVER MANAGER AND DRIVER:

The java.sql package defines an interface called


Java.sql.Driver that makes to be implemented by all the JDBC drivers and a class called
java.sql.DriverManager that acts as the interface to the database clients for performing tasks
like connecting to external resource managers, and setting log streams. When a JDBC client
requests the DriverManager to make a connection to an external resource manager, it
delegates the task to an approate driver class implemented by the JDBC driver provided
either by the resource manager vendor or a third party.

JAVA.SQL.DRIVERMANAGER:
The primary task of the class driver manager is to manage the various JDBC drivers
register. It also provides methods for:
19 | P a g e
 Getting connections to the databases.
 Managing JDBC logs.
 Setting login timeout.

MANAGING DRIVERS:
JDBC clients specify the JDBC URL when they request a connection. The driver
manager can find a driver that matches the request URL from the list of register drivers and
delegate the connection request to that driver if it finds a match JDBC URLs normally take
the following format:
<protocol>:<sub-protocol>:<resource>
The protocol is always jdbc and the sub-protocol and resource depend on the type of
resource manager. The URL for postgreSQL is in the format:
Jdbc: postgres ://< host> :< port>/<database>
Here host is the host address on which post master is running and database is the name of
the database to which the client wishes to connect.

MANAGING CONNECTION:

DriverManager class is responsible for managing connections to the databases:


public static Connection getConnection (String url,Properties info) throws
SQLException
This method gets a connection to the database by the specified JDBC URL using
the specified username and password. This method throws an instance of SQLException if
a database access error occurs.

20 | P a g e
CONNECTIONS:
The interface java.sql.Connection defines the methods required for a persistent
connection to the database. The JDBC driver vendor implements this interface. A database
‘vendor-neutral’ client never uses the implementation class and will always use only the
interface. This interface defines methods for the following tasks:
 Statements, prepared statements, and callable statements are the different types
of statements for issuing sql statements to the database by the JDBC clients.
 For getting and setting auto-commit mode.
 Getting meta information about the database.
 Committing and rolling back transactions.

CREATING STATEMENTS:

The interface java.sql.Connection defines a set of methods for


creating database statements. Database statements are used for sending SQL statements to
the database:
Public Statement createStatement () throws SQLException
This method is used for creating instances of the interface java.sql.Statement. This interface
can be used for sending SQL statements to the database. The interface java.sql.Statement is
normally used for sending SQL statements that don’t take any arguments. This method
throws an instance of SQLException if a database access error occur:
Public Statement createStatement (int resType, int resConcurrency) throws
SQLException

JDBC RESULTSETS:

A JDBC resultset represents a two dimentional array of data


produced as a result of executing SQL SELECT statements against databases using JDBC
statements. JDBC resultsets are represented by the interface java.sql.ResultSet. The JDBC
vendor provider provides the implementation class for this interface.

21 | P a g e
SCROLLING RESULTSETS:
public boolean next() throws SQLException
public boolean previous() throws SQLException
public boolean first() throws SQLException
public boolean last() throws SQLException

ACCESSING RESULTSET DATA:

Method name and Purpose

public boolean getBoolean (int i)

Gets the data in the specified column as a boolean.

public boolean getBoolean (String col)


public int getInt(int I) Gets the data in the specied columnas
an int.

public int getInt (String col)

public String getString (int I) Gets the data in the specied column as
a string.

Public String getString


(String col)

STATEMENT:
The interface java.sql.Stament is normally used for sending SQL statements that do
not have IN or OUT parameters. The JDBC driver vendor provides the implementation
class for this interface. The common methods required by the different JDBC statements
are defined in this interface. The methods defined by java.sql. Statement can be broadly
categorized as follows:

 Executing SQL statements


 Querying results and resultsets
 Handling SQL batches
 Other miscellaneous methods
22 | P a g e
The interface java.sql.statements defines methods for executing different SQL statements
like SELECT, UPDATE, INSERT, DELETE, and CREATE.
Public Resultset execute Query (string sql) throws SQLException
The following figure shows how the DriverManager, Driver, Connection, Statement,
ResultSet classes are connected.

DriverManager

Driver
Driver
Layer

Application
Layer Connection

Prepared Statement Statement Callable Statement

Result Set Result Set Result Set

23 | P a g e
JAVA SERVER PAGES (JSP)
INTRODUCTION:
Java Server Pages (JSP) technology enables you to mix regular, static HTML with
dynamically generated content. You simply write the regular HTML in the normal manner,
using familiar Web-page-building tools. You then enclose the code for the dynamic parts in
special tags, most of which start with <% and end with %>.
THE NEED FOR JSP:
Servlets are indeed useful, and JSP by no means makes them obsolete. However,
 It is hard to write and maintain the HTML.
 You cannot use standard HTML tools.
 The HTML is inaccessible to non-Java developers.
BENEFITS OF JSP:
JSP provides the following benefits over servlets alone:
 It is easier to write and maintain the HTML: In this no extra backslashes, no double
quotes, and no lurking Java syntax.
 You can use standard Web-site development tools:
We use Macromedia Dreamweaver for most of the JSP pages. Even
HTML tools that know nothing about JSP can used because they simply ignore the JSP
tags.
 You can divide up your development team:
The Java programmers can work on the dynamic code. The Web
developers can concatenate on the representation layer. On large projects, this division
is very important. Depending on the size of your team and the complexity of your
project, you can enforce a weaker or stronger separation between the static HTML and
the dynamic content.

24 | P a g e
CREATING TEMPLATE TEXT:
A large percentage of our JSP document consists of static text known as template text.
In almost all respects, this HTML looks just likes normal HTML follows all the same
syntax rules, and simply “passed through” to that client by the servlet created to handle
the page. Not only does the HTML look normal, it can be created by whatever tools you
already are using for building Web pages.
There are two minor exceptions to the “template text passed through”
rule. First, if you want to have <% 0r %> in the out port, you need to put <\% or %\> in
the template text. Second, if you want a common to appear in the JSP page but not in
the resultant document,

<%-- JSP Comment -- %>

HTML comments of the form:

<!—HTML Comment -->

are passed through to the client normally.

TYPES OF JSP SCRIPTING ELEMENTS:

JSP scripting elements allow you to insert Java code into the servlet that will be
generated from the JSP page. There are three forms:

1. Expressions of the form <%=Java Expression %>, which are evaluated and
inserted into the servlet’s output.
2. Sciptlets of the form <%Java code %>, which are inserted into the
servlet’s_jspService method (called by service).
3. Declarations of the form<%! Field/Method Declaration %>, which are
inserted into the body of the servlet class, outside any existing methods.
USING JSP EXPRESSIONS:
A JSP element is used to insert values directly into the output. It has the following form:
<%= Java Expression %>
The expression is evaluated, converted to a string, and inserted in the page. This evaluation
is performed at runtime (when the page is requested) and thus has full access to the
information about the request. For example, the following shows the date/time that the page
was requested.
Current time: <%=new java.util.Date () %>

25 | P a g e
PREDEFINED VARIABLES:
To simplify expressions we can use a number of predefined variables (or “implicit
objects”). The specialty of these variables is that, the system simple tells what names it will
use for the local variables in _jspService.The most important ones of these are:
 request, the HttpServletRequest.
 response, the HttpServletResponse.
 session, the HttpSession associated with the request
 out, the writer used to send output to clients.
 application, the ServletContext. This is a data structure shared by all servlets and
JSP pages in the web application and is good for storing shared data.
Here is an example:

Your hostname: <%= request.getRemoteHost () %>

COMPARING SERVLETS TO JSP PAGES


JSP works best when the structure of the HTML page is fixed but the values at various
places need to be computed dynamically. If the structure of the page is dynamic, JSP is less
beneficial. Some times servlets are better in such a case. If the page consists of binary data
or has little static content, servlets are clearly superior. Sometimes the answer is neither
servlets nor JSP alone, but rather a combination of both.

WRITING SCRIPTLETS
If you want to do something more complex than output the value of a simple expression
.JSP scriptlets let you insert arbitrary code into the servlet’s _jspService method.
Scriptlets have the following form:
<% Java code %>
Scriptlets have access to the same automatically defined variables as do expressions
(request, response, session, out , etc ) .So for example you want to explicitly send output of
the resultant page , you could use the out variable , as in the following example:
<%
String queryData = request.getQueryString ();
out.println (“Attached GET data: “+ queryData);
%>

26 | P a g e
SCRIPTLET EXAMPLE:
As an example of code that is too complex for a JSP expression alone, a JSP page that uses
the bgColor request parameter to set the background color of the page .Simply using
<BODY BGCOLOR=”<%= request.getParameter (“bgcolor”) %> “>
would violate the cardinal rule of reading form data.

USING DECLARATIONS
A JSP declaration lets you define methods or fields that get inserted into the main body of
the servlet class .A declaration has the following form:
<%! Field or Method Definition %>
Since declarations do not generate output, they are normally used in conjunction with JSP
expressions or scriptlets. In principle, JSP declarations can contain field (instance
variable) definitions, method definitions, inner class definitions, or even static initializer
blocks: anything that is legal to put inside a class definition but outside any existing
methods. In practice declarations almost always contain field or method definitions.
We should not use JSP declarations to override the standard servlet life cycle methods. The
servlet into which the JSP page gets translated already makes use of these methods. There
is no need for declarations to gain access to service, doget, or dopost, since calls to service
are automatically dispatched to _jspService , which is where code resulting from
expressions and scriptlets is put. However for initialization and cleanup, we can use jspInit
and jspDestroy- the standard init and destroy methods are guaranteed to call these methods
in the servlets that come from JSP.

JAKARTA TOMCAT
Tomcat is the Servlet/JSP container. Tomcat implements the Servlet 2.4 and
JavaServer Pages 2.0 specification. It also includes many additional features that make it a
useful platform for developing and deploying web applications and web services.
TERMINOLOGY:
Context – a Context is a web application.
$CATALINA_HOME – This represents the root of Tomcat installation.

27 | P a g e
DIRECTORIES AND FILES:
/bin – Startup, shutdown, and other scripts. The *.sh files (for Unix systems) are
functional duplicates of the *.bat files (for Windows systems). Since the Win32
command-line lacks certain functionality, there are some additional files in here.

/conf – Configuration files and related DTDs. The most important file in here is
server.xml. It is the main configuration file for the container.

/logs – Log files are here by default.

/webapps – This is where webapps go\

INSTALLATION:
Tomcat will operate under any Java Development Kit (JDK) environment that
provides a JDK 1.2 (also known as Java2 Standard Edition, or J2SE) or later platform.
JDK is needed so that servlets, other classes, and JSP pages can be compiled.
DEPLOYMENT DIRECTORIES FOR DEFAULT WEB APPLICATION:
HTML and JSP Files
 Main Location
$CATALINA_HOME/webapps/ROOT

 Corresponding URLs.
http://host/SomeFile.html
http://host/SomeFile.jsp

 More Specific Location (Arbitrary Subdirectory).


$CATALINA_HOME/webapps/ROOT/SomeDirectory

 Corresponding URLs
http://host/SomeDirectory/SomeFile.html
http://host/SomeDirectory/SomeFile.jsp

Individual Servlet and Utility Class Files

 Main Location (Classes without Packages).


$CATALINA_HOME/webapps/ROOT/WEB-INF/classes

 Corresponding URL (Servlets).


http://host/servlet/ServletName

28 | P a g e
 More Specific Location (Classes in Packages).
$CATALINA_HOME/webapps/ROOT/WEB-INF/classes/packageName

 Corresponding URL (Servlets in Packages).


http://host/servlet/packageName.ServletName

Servlet and Utility Class Files Bundled in JAR Files

 Location
$CATALINA_HOME/webapps/ROOT/WEB-INF/lib

 Corresponding URLs (Servlets)


http://host/servlet/ServletName
http://host/servlet/packageName.ServletName

29 | P a g e
5. TESTING AND IMPLEMENTATION

Testing plays a critical role for quality assurance and for ensuring the reliability of
the software. Its basic function is to detect the errors. After the coding phase, testing is
done to test the proper working of the new system. Testing is the process of executing a
program with the intention of finding errors. It is a complete verification to determine
whether the objectives are met and the user requirements are satisfied. The testing phase
involves testing of a system using various test data. Preparation of the test data plays a vital
role in the system testing. After preparing the test data, the system under study is testing
using those test data. Errors were found and corrected by using the following testing steps
and corrections are recorded for future references. Thus, a series of testing is performed on
the system before it is ready for coding. Since code is the only product that can be executed
frequently whose actual behavior can be observed, this phase is so important for the
successful implementation of the software product. Thus, the goal of testing is to uncover
the requirements, design and coding errors in the program.

5.1 Unit Testing


The first step in the testing is the unit testing. Unit test is normally considered as an
adjunct to the coding step. After the coding has been developed, received and verified for
correct syntax, unit testing begins. The standalone modules were tested individually for
their correct functionality, with the corresponding data. This ensures the reliability of the
modules when integrated. Each and every module is tested independently with sample data
and it was found that all modules are properly functioning. Using the unit test plans,
prepared in the design phase of the system as a guide, important control paths are tested to
uncover errors within the boundary of the modules. Boundary conditions were checked, all
independent paths were exercised to ensure that all statements in the module are checked at
least once and all error handling paths were tested. Each unit was thoroughly tested to
check if it might fall in any possible situation. This testing was carried out during the
programming itself. At the end of this testing phase, each unit was found to be working
satisfactory, as regard to the expected output from the module.

30 | P a g e
5.2 Integration Testing
The second step in the testing process is the Integration testing. Integration testing
is the systematic technique for constructing the program structure while conducting tests to
uncover errors associated with interfacing. All the modules when unit testing will work
properly but after interfacing the data can be lost across an interface, one module can have
an inadvertent, adverse effect on other, sub functions when combined may not produce the
desired major function, global data structures can cause problems, etc.
Integration testing was performed by integrating all the individual modules and the
activities of the user such as loading layers, retrieving information from any functions
applying themes based on the records present in the database etc. and is found that it works
good to the examination of the end users. Hence, the objective of integration testing is to
take unit tested modules and build a final program structure.
All the modules developed are independent. Even the whole process of approval for
all. Each module is integrated well with other modules. And all the interfaces are tested
successfully.

5.3 Functional Testing


This test involves testing the system under typical operating conditions with sample
input values. Functional testing was performed on the system by giving existing industry id
or plot number and a null or string as the input for any field in which case the user should
be redirected to the same state with the appropriate message, rather than proceeding and
crashing in the system.

Functional testing was performed on the system by raising the demand with an eye
to check all the validations. The total processing of the system is satisfactory with the
following results.

 All the validations are clearly notified to the user regarding jobseekers reg, new client
reg, job order, job providers, and job search preparation etc.
 Almost all the functional errors, data storage errors and all types of logical errors are
tested successfully.

31 | P a g e
5.4 Acceptance Testing
User acceptance test of a system is the factor for the success of the system. The
system under consideration was listed for user acceptance by keeping constant touch with
the perspective user of the system at the time of design, development and making changes
whenever required for unit testing.
The requirements of the customer are gathered at regular intervals at the developing
site itself. The problems that are to be visualized through this tool are been gathered by the
customer and are reported.
The user at the user’s site carried this test. Live data entered and the system’s output
was compared with what was manually prepared. Here the system has met the user’s
requirement in the following fields:
 Data Entry
 Error Handling
 Reporting and corrections
 Data Access Protections
 System Output

5.5 Implementation

Implementation includes all those activities that take place to convert the old system
to the new system .The new system will replace he existing system. The aspects of
implementation are as follows.
Conversion, Post Implementation Review.
Conversion
Conversion means changing from one system to another. The objective is to put the
tested system into operation. It involves proper installation of the software package
developed and training the operating staff.
The software has been installed and found to be functioning properly. The users
how to be trained to handle the system effectively. Sample data provide to the operating
stuff and were asked to operate on the system. The operating stuffs now have a clear out
look of the software and are ready for practical implementation of the package.
Post Implementation Review
A post implantation review is an evaluation of system in terms of the extent to
which the system accomplishes the started objectives. This starts after the system is
implemented and conversation is complete.
32 | P a g e
6. CONCLUSION AND ENHANCEMENTS

6.1 Conclusion
This system has been developed successfully incorporate all the requirements.
Appropriate care has taken during database design maintain database integrity and to avoid
redundancy of data. This site was developed in such a way that any further modifications
needed can be easily done. User feels freely while using this site. In this all technical
complexities are hidden. This site is a more user friendly.
The quality features like correctness, efficiency, usability, maintainability,
portability, accuracy, errors free, tolerance, expandability and communicatively all are
successfully done.

Foreseeable enhancements

There is always a room for improvement in any software package, however good
and efficient it may be. The important thing is that the website should be flexible enough
for further modifications. Considering this important factor, the web site is designed in
such a way that the provisions are given for further enhancements. At present this website
provides all the information using static pages and reservation forms.
In future we can enhance our project by providing options like.
Include many sites information.

33 | P a g e
7. BIBLIOGRAPHY
References
1. Kamal Acharya. Teacher record management system project
report. Authorea. August 02, 2024.
DOI: https://doi.org/10.22541/au.172261514.46787329/v1
2. Kamal Acharya. POST OFFICE MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. August 02, 2024.
DOI: https://doi.org/10.22541/au.172261514.44494375/v1
3. Kamal Acharya. Fruit shop management system project report. Authorea. August
02, 2024.
DOI: https://doi.org/10.22541/au.172261514.42227675/v1
4. Kamal Acharya. Dairy management system project report. Authorea. August 02,
2024.
DOI: https://doi.org/10.22541/au.172261513.39402347/v1
5. Kamal Acharya. DATA COMMUNICATION AND COMPUTER NETWORK
MANAGEMENT SYSTEM PROJECT REPORT. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172254873.37480177/v1
6. Kamal Acharya. School management system project report. Authorea. August 01,
2024.
DOI: https://doi.org/10.22541/au.172254873.34023165/v1
7. Kamal Acharya. A CASE STUDY OF CINEMA MANAGEMENT SYSTEM
PROJECT. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172254873.30191075/v1
8. Kamal Acharya. A CASE STUDY ON ONLINE TICKET BOOKING SYSTEM
PROJECT. Authorea. August 01, 2024
DOI: https://doi.org/10.22541/au.172254872.26972790/v1
9. Kamal Acharya. Web chatting application project report management
system. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172254871.18588592/v1
10. Kamal Acharya. RETAIL STORE MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172254871.14590154/v1
11. Kamal Acharya. SUPERMARKET MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172252491.19145062/v1
12. Kamal Acharya. SOCIAL MEDIA MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172252491.11210579/v1
13. Kamal Acharya. Online music portal management system project
report. Authorea. August 01, 2024.
DOI: https://doi.org/10.22541/au.172252488.89734698/v1
14. Kamal Acharya. COLLEGE BUS MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. July 31, 2024.
DOI: https://doi.org/10.22541/au.172245277.70798942/v1
15. Kamal Acharya. AUTOMOBILE MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. July 31, 2024.
DOI: https://doi.org/10.22541/au.172245276.67982593/v1
16. Kamal Acharya. Ludo management system project report. Authorea. July 31, 2024
DOI: https://doi.org/10.22541/au.172243999.98091616/v1

34 | P a g e
17. Kamal Acharya. Literature online quiz system project report. Authorea. July 31,
2024
DOI: https://doi.org/10.22541/au.172243825.53562953/v1
18. Kamal Acharya. Avoid waste management system project. Authorea. July 29, 2024
DOI: https://doi.org/10.22541/au.172228528.85022205/v1
19. Kamal Acharya. CHAT APPLICATION THROUGH CLIENT SERVER
MANAGEMENT SYSTEM PROJECT. Authorea. July 29, 2024.
DOI: https://doi.org/10.22541/au.172228527.74316529/v1
20. Kamal Acharya. Parking allotment system project report. Authorea. July 29, 2024.
DOI: https://doi.org/10.22541/au.172227078.89966943/v1
21. Kamal Acharya. HEALTH INSURANCE CLAIM MANAGEMENT
SYSTEM. Authorea. July 26, 2024.
DOI: https://doi.org/10.22541/au.172202020.06707762/v1
22. Kamal Acharya. ONLINE TRAIN BOOKING SYSTEM PROJECT
REPORT. Authorea. July 22, 2024.
DOI: https://doi.org/10.22541/au.172167914.45160406/v1
23. Kamal Acharya. COVID MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. July 16, 2024.
DOI: https://doi.org/10.22541/au.172116616.60220024/v1
24. Kamal Acharya. COVID MANAGEMENT SYSTEM PROJECT
REPORT. Authorea. July 16, 2024.
DOI: https://doi.org/10.22541/au.172116616.60220024/v1

35 | P a g e
8. APPENDICES

8.1 Appendix A

Core Technologies in J2EE:

 Java Servlet Technology - Servlets are platform-independent, 100% pure Java server-
side modules that fit seamlessly into a web server framework and can be used to extend
the capabilities of a web server with minimal overhead, maintenance, and support
 JDBC (Java Database Connectivity) - Provides a uniform interface to a wide range of
relational databases, and provides a common base on which higher-level tools and
interfaces can be built.
JMS (Java Mail Service)

The Multi tire architecture


Client / Presentation tier

JavaScript
Generally a thin Client is preferred in a Web application. This is because this layer
travels across the networks in the Internet & serves the pages in the client web browser. If
the amount of data that goes into this layer is great, it takes more time to go across the
Internet. The response time from the server will be increased. So to maintain a thin client a
two pronged strategy is used.
The first one is to check for client side validations in the browser itself. The second
one is that any considerable interactions or data required on the server are stored or cached
in JavaBeans or Enterprise JavaBeans(Stateful Session Beans) or classes on the Server
itself & only data that is to be shown in the browser is sent across to the browser. To
achieve the first objective JavaScript is the best solution available.
The best example that can be given is if in a login page the user presses the login
button without entering any text for either the user name or password fields, it will be a
waste of time to go back to the server & check for validations there. JavaScript has been
used in these situations, which will check for the validations on the client browser & save a
lot of time being wasted.

36 | P a g e
JavaScript was developed by Netscape & is modeled very closely on the Java
language. This makes it a natural choice to complement JSP for the development of the
client tier. The reference Manual of JavaScript [JS-NET], has been referred to extensively
while using JavaScript in the Project.
Business Logic Tier
The Business logic tier comprises a whole set of Java classes .
Internet Services
For access to Internet services, J2EE supports the HTTP, TCP/IP, and SSL
protocols.
• TCP/IP (Transport Control Protocol over Internet Protocol) provides a mechanism to
establish connections and reliably deliver streams of data between Internet hosts.
• HTTP (HyperText Transfer Protocol) is the basis of Internet browsers and Web
servers. A client makes an HTTP request to a server, and HTML hypertext is
returned via HTTP.
• SSL (Secure Socket Layer) provides a secure mechanism for clients to access hosts on the
Internet, without someone tampering or accessing the messages. In addition, new
extensible Markup Language (XML) functionality is supported in J2EE 1.3. XML provides
tagged data similar to HTML, but the tags describe the data rather than the way the data is
displayed. XML can be used to transfer formatted data between applications or servers on
the Internet—for example, for supporting transactions between businesses (B2B). Support
for parsing XML and representing XML as objects is implemented and is being currently
standardized.

Application Configurations Supported by the J2EE Architecture


The J2EE architecture can be used to configure various multitier applications.
In a typical multitier Web application, a Web server implemented using JSP or servlets
sends HTML or XML to a Web browser client. It generates dynamic content by making
calls to database systems or existing enterprise services using JNDI, JDBC, JavaIDL, and
other J2EE supported technologies (see Figure below - Multitier Application with Web
Server/JSP Interface and EJB Middle Tier).
A multitier J2EE application uses Web components and accesses multiple
databases, with Enterprise JavaBeans in between to encapsulate more complex business
logic than could be supported in JSP alone (see Figure below - Multitier Application with
Web Server/JSP Interface and EJB Middle Tier). EJBs also automate the transaction
monitoring required to access multiple databases.
37 | P a g e
Client Tier | Web Tier | Business Logic Tier | Database Tier

Browser Web Java Classes Data-


Container base
JDBC

HTML JSP pages EJB

HTTP Servlets JMS

XML XML JTA

Data Storage Tier

The best way to store data is in a Relational database. There has been a lot of
development in the databases & they have evolved form storing the data on punch cards,
through storage in flat files, & through storage in simple databases to storage in Relational
databases. The most successful commercial databases are relational databases.
Recently a lot of research is taking place on Object oriented databases because they
are supposed to overcome the disadvantages of relational databases. Though there are some
implementations of Object oriented databases like O2, the commercial industry has still not
adopted it in any significant way. Most of the commercial applications use relational
databases to store the persistent data. In view of this the best option to store persistent data
for the application is a Relational Database system.

38 | P a g e
JDBC (Java Database Connectivity)

The JDBC interface is a pure Java API used to execute SQL statements. The JDBC
provides a set of classes and interfaces that can be used by developers to write database
applications. It can be broken down into four steps.

 Open a Connection to the Database.


 Execute a SQL statement.
 Process the results.
 Close the connection to the database.

The JDBC provides support for two and three-tier database access models.
If you use the two-tier database access model, your Java application talks directly to
the database. The results of these commands are then sent back from the database directly
to the application.
When you use three-tier model, you’re your JDBC sends commands to a middle-
tier, which in turns sends commands to the database. The results of these commands are
then sent back to the middle-tier, which communicates them to the application.

JDBC Driver Types

 JDBC-ODBC Bridge, plus ODBC Driver


 Native-API, Partly- Java Driver
 JDBC-Net, Pure Java Driver
 Native-Protocol, pure Java Driver

JDBC-ODBC Bridge
It provides JDBC access to databases through ODBC drivers. The ODBC driver
must be configured on the client for the bridge to work.

Native-API

The native-API driver converts JDBC commands into DBMS-specific native calls. The
client must have some binary code loaded on its machine.

39 | P a g e
JDBC-Net, Pure Java Driver
The JDBC-Net drivers are a three-tier solution. This type of driver translates JDBC
calls into a database-independent network protocol that is sent to a middleware server. This
server then translates this DBMS-independent protocol into a DBMS-specific protocol,
which is sent to a particular database.

Native-Protocol, pure Java Driver


These drivers are pure Java drivers that communicate directly with the vendor’s
database. They do this by converting JDBC commands directly into the database engine’s
native protocol.

8.2 Appendix B

Introduction to Oracle8.0

Oracle is a Comprehensive Operating Environment that packs the power of


mainframe Relational database Management system into users microcomputers. It provides
a set of functional programs that user can use as tools to build structures and perform tasks,
because applications developed in oracle are completely portable to other versions of the
programmer who can create a complex application in a single user environment and then
move it to a multi user platform. Users do not have to be an expert to appreciate Oracle but,
the better user understands the programs, the productively, creatively he can use the tools it
provides.

Why Oracle?
I selected Oracle for developing the project work because it supports RDBMS
features. Also it provides tools like SQL * PLUS, SQL*FORMS, SQL*REPORT
WRITER, SQL*MENUS. Also it supports high security to the Data and faster Accessing
capability.
It can be run on a variety of platforms and Operating systems. It provides Host
language procedures like PRO*C, PRO*COBOL. An application that requires many lines
of Host language code can be developed very easily. One can develop an Application
easily by providing User-friendly Environment Support for Codd’s Rules:

40 | P a g e
Oracle supports the following rules of Dr.E.F.CODD:

Rule1: Information Rule (Representation of information)


Rule 2: Guaranteed Access
Rule3: Systematic Representation of missing Information
Rule 4: Comprehensive On Line Catalogue
Rule 5: Comprehensive Data Sub-Language
Rule 6: View Updating
Rule 7: High Level Insert, Update, Delete
Rule 8: Physical Data Independence
Rule 9: Logical Data Independence
Rule 10: Integrity Independence
Rule 11: Distribution Dependence
Rule 12: Non-Subversion

FEATURES OF ORACLE

Oracle is portable
The Oracle RDBMS is available on wide range of platforms, ranging from PCs to
super computers and as a multi-user network loadable module (NLM) for Novell Netware.
If you develop an application on one system you can run the same application on other
systems without any modifications.

Oracle is Compatible
The Oracle command can be used for communicating with IBM, DB/2, Mainframe
RDBMS, which is different from Oracle, i.e., Oracle is compatible with DB/2. Oracle is a
high performance fault tolerant DBMS which is specially designed for on-line transaction
processing and for handling the large database applications.

Oracle RDBMS is available with 2 options

Oracle RDBMS version 8.0 with transaction processing option and Oracle RDBMS
version 8.0 without transaction processing option. Oracle is very high level of transaction
processing, throughout, which is as follows:

 The Row Level Lock Manager


 PL/SQL a procedural language extension of SQL
 Forms 5.0
41 | P a g e
Oracle Tools
Oracle is RDBMS, which stores and displays the Data in the form of tables. A table
consists of rows and columns. A single row is called Record. Oracle is a modular system
that contains Oracle Database (DB Manager) and several Tools (Functional Programs).

Oracle Tools do 4 major kinds of work

 Database management
 Data access and manipulation
 Programming
 Connectivity.

Data Access and Manipulation Tools:

These are the tools used for communication with database manger for data access
and manipulation. These tools can be used for not only access and manipulation but you
can use design or use an application. Each tool Provides separate entry point and a unique
approach to the Oracle system. The tools are firmly based on ANSI standard SQL.

SQL*PLUS
SQL* Plus is direct access to the Oracle RDBMS. You can see SQL commands to
define, control and manipulate and query data. All users like DBA’s, high-level system
developers and others can talk straight in Oracle RDBMS.

Connectivity Tools
The connectivity tools help in connecting the Oracle databases through network and
to other database systems. SQL* Plus allows for accessing the IBM, DB/2 (an IBM
Mainframe RDBMS) and SQL/DS (Structured query language for data system) databases
directly using the normal Oracle commands without doing any modifications.

SQL
The name SQL stands for structure query language. SQL is data access language,
like any other language, it is used for communication. SQL communicates with database
manager. The database manager could be Oracle, DB2, and SQL base, in grace or any
RDBMS that supports SQL language. These database systems understand SQL.
SQL is easy to learn. Despite the fact that the SQL is a computer programming
language, it is much simpler than traditional programming language like COBOL, BASIC,
FORTRAN or APL. This is due to the fact that SQL is non-procedural language.

42 | P a g e
Features of SQL
SQL users a free form (A non mathematical syntax), English like structure for its
commands.
Ex: You select some data from your table, where certain conditions are met, you
insert your values into some table; you delete data from some table where conditions are
met. It is very logical and easy to follow.
SQL decides how it gets your data to and from database. All you have to specify is
what and SQL does the rest. This is being called non navigational and it promises large
productivity gains for the data processing identity. Sometimes programs in traditional
processing system can be replaced with a single SQL query.
1. Most traditional RDBMS support both interactive and static SQL processing i.e.
SQL statements can be executed in an alternative fashion where you talk directly to the
database manager or SQL statement can be embedded in traditional computer
programming language like COBOL. This is necessary because SQL is originally intended
to use with other programming language. By itself it has no commands for screen dialogue
or for more than crude report formatting. So this dual mode feature is very important in any
kind of formal data processing application. The embedded SQL statements themselves are
very simple to their interactive counter parts.

2. Finally, SQL process data at the set level, meaning your updates will change a
set of records (rows) and query output will comeback in a set of records (a result table)

SQL Processing Capabilities


SQL is composed of a Definition language, a Data manipulation language and a
Data control language. These three languages support the complete spectrum of Relational
Data processing activity. In fact most SQL based products all access to the data through
SQL.
1. Data definition language: DDL allows creation, deletion and modification of
data structures for bar system. These structures include tables, databases, and indexes.
Ex: Creation, Drop, Alter.

2. Data Manipulation Language: These commands are used to manipulate the data
in tables directly or through views. There are four standard DML statements. They are
Delete, Insert, and Update.

3. Data control language: These commands are used to control usage and access
of data. The most commonly found one’s are Grant and Revoke.
43 | P a g e
PL/SQL
PL/SQL is an extension to SQL. It allows us to use all the SQL data Manipulation
statements including insert, delete, update and select as well as the transaction processing
statements Commit, Rollback and save point.

PL/SQL blocks can contain any number of SQL combined with the following:

 Flow of control statements such as IF…THEN...ELSE, EXIT and GOTO.


 Repetition statement such as for loop and while loop.
 Assignment statements such as x: = y + z unlike SQL, PL/SQL allows logically group a
set of statements and send them to the RDBMS as a single block

Advantages of PL/SQL
PL/SQL is completely portable, high performance Transaction processing language
(TPL) that gives us more and better ways to express problems and design database
application. Specifically PL/SQL provides

The following advantages

 Procedural Capabilities.
 Improved Performance
 Enhanced Productivity
 Portability
 Integration with the RDBMS.

Procedural capabilities

PL/SQL is a TPL that offers procedural solutions. It supports variable and constant
declarations, error handling and a wide variety of useful functions within the same PL/SQL
block; we can use SQL and all the PL/SQL extensions.

Improved performance
Without PL/SQL the Oracle RDBMS must Process SQL statements one at a time.
Each SQL statement results in another call to be RDBMS and higher performance
overhead can become significant when we are issuing many SQL statements in a network
environment.

44 | P a g e
Enhanced Productivity
PL/SQL also brings added functionality to non-procedural tools Such as SQL
forms. With PL/SQL in these tools, software developers can use familiar procedural
language construct to develop applications.

Portability
Applications written in PL/SQL are portable to any computer hardware and
operating system environment running the oracle version 8i RDBMS.

Integration with the RDBMS


Both PL/SQL and Oracle have their foundation in SQL also. Most PL/SQL variable
has Data types native to the RDBMS Data Dictionary

Main Features of SQL


SQL Data manipulation statements are built into PL/SQL. This allows inserting
new data into a database, retrieving, modifying and deleting data.

Support for SQL


By extending SQL, PL/SQL offers a unique combination of power and ease of use.
We can access our Oracle database and manipulate its data flexibly and safely because
PL/SQL supports SQL DML statements, SQL TPL statements, SQL functions and SQL
predicates. SQL data definition statements such as Alter, Create and Rename and data
control statements connect; Grant and Revoke statements are supported.

SQL Data Manipulation Statements:


A transaction is a sequence of SQL statements that Oracle treats as a unit, so that all
changes brought about by the statements are made permanent or undone for the same time.
The consistency of the database PL/SQL lets you use the Commit, Rollback and Save point
statements. The Commit statement makes permanent any changes made during the current
transaction until you commit your changes, other users cannot see them. The Rollback
statement ends the current transaction and undoes any changes made since the transaction
began. The Save point statement marks the current point in the processing of a transaction.

45 | P a g e
8.3 Appendix C

Glossary

HTML Element:
Commonly referred as a tag, it is a component of hierarchical structure, defined by
a document type definition.
Browser:
Client software for displaying web pages and using hyperlinks to navigate the web.
Common Gateway Interface:
The interface between the browser and server.
Client:
A combination of computer and software capable of receiving information and instruction
from a remote host computer or server.
File Transfer Protocol:
The method for remote logging to a computer to exchange the files over a TCP/IP
network.
From:HTML Components that enables web author to have input fields on the pages,
permitting feedback from users and offering interactive options.
Frames: A Kind of simultaneously hypertext. Present information as currently display
group of pages.
Head:Part of a computer documents containing the information about the documents it
self.
Hyperlink:
A connection between one file and another file or tin side the file.
Images:
Originally created to include the visual images on pages.
Uniform Resource Locator:
The path to specific document on the internet that consists of protocols, a domain
name or IP address, a directory structure, and the document name.

46 | P a g e
UML--DIAGRAMS
Class Diagram

E-R Diagrams:-

Job Seeker:-
STATE
SALAR
CITY Y GEND
UNAM ER
E FAREA
PASS

CPASS DOMA
IN

KEYSK
Job Seeker ILLS
NAME
MOBIL
ENO
RESU
MAILI ME
D

Mail id
OTHERQ
U
ADD
SSCCE
UPDATE RTNO
SSC

PROFILE
INTERCERTN
O

INTER
GRADU
OTHERC GPER
USERID
GUN ERT
47 | P a g e
SKILL5
USERID
SKILL6

Skills
SKILL1 OTHER
S
DESCOFSKIL
SKILL2 LS
TOTEXP
SKILL3

SKILL4
User id PROJECTS
EXPERIENCE

RESUME

48 | P a g e
JOBORDER:-

Skills

No Of
EXPE

NOYEXP
JOBTITLE
JOBORDER
RELDATE
JOBCODE

SKILLs
CLIENTID

49 | P a g e
Use case diagrams:-
Use case diagrams:

Client usecase:

Add Job

PostJob

Client

DeleteJob

Mailing

Searching

50 | P a g e
Jobseeker use case:

Add Profile

UpdateProfile

JobSeeker DeleteProfile

Mailing

Search

Admin use case:

ReportsDetails
Admin

51 | P a g e
Sequence Diagram

Clients sequence:

Client Login Add Job Update Job Delete Job Mails Search Logout

enter mailid & pas


invalid mailid

post job

Update jod details

Delete posted job

checking mails and sending mails

search for job seekers matched to clients req

logout

52 | P a g e
Jobseekers sequence:

Jobseeker Login Add Profile Update Profile Delete Profile Check Mails Job Search Log out

enter mailid &

invalid mailid add skills &

update the skills and domain

Delete the skills and domain

checking mails and sending

searching job by giving skills and related experience

Log out

back to home page

53 | P a g e
Admin’s sequence:

Admin Login Reports Logout

enter uname
invalild

valid uname
get reports

logout

Collabaration diagram for jobseeker:

Add

post the profile

Update profile Update


jobseeke
r
Delete profile

checking mails

search Delete

Mailing

Search

54 | P a g e
Clients collaboration Diagram:

Add

post the Job details

Update job details Update


Client

Delete Job details

checking mails

search Delete
for

Mailing

Search

55 | P a g e
DFD’S

NOTATIONS USED IN DATA FLOW DIAGRAMS


The logic dataflow diagrams can be drawn using only four simple notations i.e.,
special symbols or icons and the annotation that associates them with a specific system.
Since the choice of notation we follow, does not affect impede or catalyze the system
process; we used three symbols from YOURDON notation and one from Gain and Sarson
notation as specified below.
Element References symbols

Data Flow Process

Process

Data Store

Source or Sink

Description:
Process: describes how input data is converted to output Data
Data Store: Describes the repositories of data in a system
Data Flow: Describes the data flowing between process, Data stores and external
entities.
Sources: An external entity causing the origin of data.
Sink: An external entity, which consumes the data.

56 | P a g e
Context level

0 level

Administrator Administrator

Job Seeker
CAREER Job Seeker
EXPO

Client
Client

administrator

Users Login Job Seeker


process

Client
registration

57 | P a g e
1 level

Career Reports
Administrator expo

Jobseeker:-

update
Carrer
Job seeker expo Job seeker

delete

Add new job


seeker details

58 | P a g e
Client

update
Career
Client expo

delete

Add new
Jobs
Add new
Client details

59 | P a g e
8.4 Appendix D

Screens:

Home page for Secure mail.

60 | P a g e
Registration page for secure mail:

Registration page

61 | P a g e
Admin’s (krest) login:

62 | P a g e
Admin has logged in:

63 | P a g e
Managing (Adding) the keywords:

Inserted the keyword by using manage keywords button:

64 | P a g e
Displaying the keywords:

List of blocked mails:

65 | P a g e
User’s(xyz) login :

66 | P a g e
User’s inbox:

Compose mail page:

67 | P a g e
68 | P a g e
User’s Inbox page:
Blocked mails which are sent from the admin

69 | P a g e
Sent mail page of the user:

70 | P a g e

You might also like