Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

"Student Notifying System

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 42

Student Notifying System

INTRODUCTION

INTRODUCTION & OBJECTIVE


This Project is based on the convenience of the students to communicate with the
resources provided by the distance learning section of the college. This project is aimed to
provide services to students over Internet, each student is given with a unique id and as
the student logs on into the system he will be given access to anonymous number of
sections related to the college. Its purpose is to develop a Common platform to establish
communication between students and university professors. The main goal of the project
is to maintain all academic data online, and establishing a communication channel
between faculties, college and the admin. It helps the students to get the information
about college events and placement results and the information.

Existing System:
In current situation lot of colleges maintain their academic related data, student data,
and faculty data either in manual process or by using computer but not by using any
software related database. So all the users of that college can’t view their personal
information and that must be maintained by administrator and it is very difficult process
to store each and every person’s details. In addition, with this, corporate companies detail
also not available in online for college people. To avoid these problems and to provide
interaction between users to database we have developed a new WEB application called
“SAHYDRI BCA NEWS”.

Proposed System:
Sahyadri BCA NEWS is a multi-tier application for handling an institute’s over all
data
. The user will access the system using web application we created. The functionalities of
this application are

 Maintenance of records of students and members of the institute.


 Registration and re-registration of members.
 College events and placement data
 Maintenance and information about companies.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 1


Student Notifying System

 Handling of security requirements and access rights of the entire system.

Project Analysis:

This application has been divided in to four modules.

1. Admin Module
2. Student Module
3.Faculty Module

1. Student Module:
The student module consists of the process login where the user information is
authenticated. Functionalities provided by this module are

 Registration for entrance: It involves the various details regarding the


students.
 Registration for the course: In the registration the student is given the
privilege to register any of the courses and this particular process also consists
of the payment process.
 Examination: Before the student is been given the registration there will be pre-
level examination.
 Registration for the events and placement data.

2. Admin Module:
The administrator has the right to access the registered student details and approve
them. The students can just get on to the system to know any such information that is of
importance to their academics. The students can also have referential information related
to the normal structure of their courses, and time tables of the examination. The system
also provides the accessibility towards the provision of old question paper and their
answers along with the academic material that is given by the institute. From the side of
the faculties point the application helps in managing the nominal requirements for the
faculties to enquire, for the subjects what they have been allocated along with the courses
for which they have been registered. The system also helps the faculties in managing the

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 2


Student Notifying System

information related to the assignments that they have to schedule for students as per the
time in which they are made responsible

SOFTWARE REQUIREMENTS:-
 Web Presentation : HTML, CSS

 Client – side Scripting : JavaScript

 Programming Language : Java


 Web based Technologies : Servlets, JSP
 Database Connectivity : JDBC
 Java Version : JDK1.5
 Backend Database : My SQL 5.0
 Operating System : Windows XP/2000/2003, LINUX
 Web Server : Tomcat 5.5
 Browser : IE/Mozilla

HARDWARE REQUIREMENTS(MINIMUM):-

 Pentium processor : 233 MHZ


 RAM Capacity : 512MB
 Hard Disk : 20GB
 CD-ROM Drive : 32 HZ
 Keyboard : 108 Standard
 Mouse : Optical
 Monitor : 15’’ Color Monitor

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 3


Student Notifying System

STUDY OF THE SYSTEM

To provide flexibility to the users, the interfaces have been developed that are
accessible through a browser. The GUI’S at the top level have been categorized as

1. Administrative user interface


2. The operational or generic user interface

The ‘administrative user interface’ concentrates on the consistent


information that is practically, part of the organizational activities and which
needs proper authentication for the data collection. These interfaces help the
administrators with all the transactional states like Data insertion, Data deletion
and Date updating along with the extensive data search capabilities.

The ‘operational or generic user interface’ helps the end users of the system in
transactions through the existing data and required services. The operational user
interface also helps the ordinary users in managing their own information in a customized
manner as per the included flexibilities

INPUT & OUTPOUT REPRESENTETION


Input design is a part of overall system design. The main objective during the input
design is as given below:
 To produce a cost-effective method of input.
 To achieve the highest possible level of accuracy.
 To ensure that the input is acceptable and understood by the user.

INPUT STAGES:
The main input stages can be listed as below:
 Data recording
 Data transcription
 Data conversion
 Data verification
 Data control
 Data transmission
 Data validation
 Data correction

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 4


Student Notifying System

INPUT TYPES:
It is necessary to determine the various types of inputs. Inputs can be categorized
as follows:
 External inputs, which are prime inputs for the system.
 Internal inputs, which are user communications with the system.
 Operational, which are computer department’s communications to the
system?
 Interactive, which are inputs entered during a dialogue.

INPUT MEDIA:
At this stage choice has to be made about the input media. To conclude about the
input media consideration has to be given to;
 Type of input
 Flexibility of format
 Speed
 Accuracy
 Verification methods
 Rejection rates
 Ease of correction
 Storage and handling requirements
 Security
 Easy to use
 Portability
Keeping in view the above description of the input types and input media, it can
be said that most of the inputs are of the form of internal and interactive. As Input data is
to be the directly keyed in by the user, the keyboard can be considered to be the most
suitable input device.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 5


Student Notifying System

OUTPUT DESIGN:

In general are:
 External Outputs whose destination is outside the organization.
 Internal Outputs whose destination is with in organization and they are the User’s
main interface with the computer. Outputs from computer systems are required
primarily to communicate the results of processing to users. They are also used to
provide a permanent copy of the results for later consultation. The various types of
outputs
 Operational outputs whose use is purely with in the computer department.
 Interface outputs, which involve the user in communicating directly with the
system.

OUTPUT DEFINITION
The outputs should be defined in terms of the following points:
 Type of the output
 Content of the output
 Format of the output
 Location of the output
 Frequency of the output
 Volume of the output
 Sequence of the output

It is not always desirable to print or display data as it is held on a computer. It


should be decided as which form of the output is the most suitable.

For Example
 Will decimal points need to be inserted
 Should leading zeros be suppressed.

OUTPUT MEDIA:
In the next stage it is to be decided that which medium is the most appropriate for
the output. The main considerations when deciding about the output media are:

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 6


Student Notifying System

 The suitability for the device to the particular application.


 The need for a hard copy.
 The response time required.
 The location of the users
 The software and hardware available.

Keeping in view the above description the project is to have outputs mainly
coming under the category of internal outputs. The main outputs desired according to the
requirement specification are:

The outputs were needed to be generated as a hard copy and as well as queries to
be viewed on the screen. Keeping in view these outputs, the format for the output is
taken from the outputs, which are currently being obtained after manual processing. The
standard printer is to be used as output media for hard copies.

PROCESS MODEL USED WITH JUSTIFICATION


SDLC Methodology:
This document play a vital role in the development of life cycle (SDLC) as it
describes the complete requirement of the system. It means for use by developers and
will be the basic during testing phase. Any changes made to the requirements in the
future will have to go through formal change approval process.

SPIRAL MODEL was defined by Barry Boehm in his 1988 article, “A spiral Model
of Software Development and Enhancement. This model was not the first model to
discuss iterative development, but it was the first model to explain why the iteration
models.

As originally envisioned, the iterations were typically 6 months to 2 years long.


Each phase starts with a design goal and ends with a client reviewing the progress thus
far. Analysis and engineering efforts are applied at each phase of the project, with an eye
toward the end goal of the project.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 7


Student Notifying System

The steps for Spiral Model can be generalized as follows:


 The new system requirements are defined in as much details as possible. This
usually involves interviewing a number of users representing all the external
or internal users and other aspects of the existing system.

 A preliminary design is created for the new system.

 A first prototype of the new system is constructed from the preliminary


design. This is usually a scaled-down system, and represents an
approximation of the characteristics of the final product.

 A second prototype is evolved by a fourfold procedure:

1. Evaluating the first prototype in terms of its strengths, weakness, and risks.

2. Defining the requirements of the second prototype.

3. Planning an designing the second prototype.

4. Constructing and testing the second prototype.

 At the customer option, the entire project can be aborted if the risk is deemed
too great. Risk factors might involved development cost overruns, operating-
cost miscalculation, or any other factor that could, in the customer’s judgment,
result in a less-than-satisfactory final product.

 The existing prototype is evaluated in the same manner as was the previous
prototype, and if necessary, another prototype is developed from it according
to the fourfold procedure outlined above.

 The preceding steps are iterated until the customer is satisfied that the refined
prototype represents the final product desired.

 The final system is constructed, based on the refined prototype.

 The final system is thoroughly evaluated and tested. Routine maintenance is


carried on a continuing basis to prevent large scale failures and to minimize
down time.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 8


Student Notifying System

4 SYSTEM ARCHITECTURE

ARCHITECTURE FLOW :

User

SERVER
Request Response

Data
Base

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 9


Student Notifying System

URL PATTERN:

Presentation
Layer

Response sent URL Request


from the sent through
servlet the browser
SERVLETS
AT THE
SERVER
SIDE
Reply from the Verifying or
database updating the
according to the database through a
statement statement

DATABASE

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 10


Student Notifying System

FUNCTIONAL REQUIREMENTS SPECIFICATION

This application has been divided in to four modules.

1. Admin Module
2. Student Module

1. Admin Module:
The student module consists of the process login where the user information is
authenticated. Functionalities provided by this module are

 Registration for entrance: It involves the various details regarding the


students.

 Registration for the course: In the registration the student is given the
privilege to register any of the courses and this particular process also consists
of the payment process.

 Examination: Before the student is been given the registration there will be pre-
level examination.

2. Student Module:

The administrator has the right to access the registered student details and approve
them. The students can just get on to the system to know any such information that is of
importance to their academics. The students can also have referential information related
to the normal structure of their courses, and time tables of the examination .The system
also provides the accessibility towards the provision of old question paper and their
answers along with the academic material that is given by the institute.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 11


Student Notifying System

PERFORMANCE REQUIREMENTS

Performance is measured in terms of the output provided by the application.


Requirement specification plays an important part in the analysis of a system. Only when
the requirement specifications are properly given, it is possible to design a system, which
will fit into required environment. It rests largely with the users of the existing system to
give the requirement specifications because they are the people who finally use the
system. This is because the requirements have to be known during the initial stages so
that the system can be designed according to those requirements. It is very difficult to
change the system once it has been designed and on the other hand designing a system,
which does not cater to the requirements of the user, is of no use.
The requirement specification for any system can be broadly stated as given
below:
 The system should be able to interface with the existing system
 The system should be accurate
 The system should be better than the existing system
The existing system is completely dependent on the user to perform all the duties.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 12


Student Notifying System

INTRODUCTION ABOUT JAVA


Initially the language was called as “oak” but it was renamed as “java” in
1995.The primary motivation of this language was the need for a platform-
independent(i.e. architecture neutral)language that could be used to create software to be
embedded in various consumer electronic devices.

 Java is a programmer’s language


 Java is cohesive and consistent
 Except for those constraint imposed by the Internet environment. Java
gives the programmer, full control

Finally Java is to Internet Programming where c was to System Programming.

Importance of Java to the Internet


Java has had a profound effect on the Internet. This is because; java
expands the Universe of objects that can move about freely in Cyberspace. In a
network, two categories of objects are transmitted between the server and the personal
computer. They are passive information and Dynamic active programs. in the areas of
Security and probability. But Java addresses these concerns and by doing so, has
opened the door to an exciting new form of program called the Applet.

Applications and applets. An application is a program that runs on our


Computer under the operating system of that computer. It is more or less like one
creating using C or C++ .Java’s ability to create Applets makes it important. An
Applet I san application, designed to be transmitted over the Internet and executed by
a Java-compatible web browser. An applet I actually a tiny Java program, dynamically
downloaded across the network, just like an image. But the difference is, it is an
intelligent program, not just a media file. It can be react to the user input and
dynamically change.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 13


Student Notifying System

Servlets/JSP

A Servlet Is a generic server extension. a Java class that can be loaded


Dynamically to expand the functionality of a server.Servlets are commonly used with
web servers. Where they can take the place CGI scripts.

A servlet is similar to proprietary server extension, except that it runs inside a Java
Virtual Machine (JVM) on the server, so it is safe and portable

Servlets operate solely within the domain of the server.

Unlike CGI and Fast CGI, which use multiple processes to handle separate program or
separate requests, separate threads within web server process handle all servlets. This
means that servlets are all efficient and scalable.

Servlets are portable; both across operating systems and also across web servers. Java
Servlets offer the best possible platform for web application development.

Servlets are used as replacement for CGI scripts on a web server, they can extend any
sort of server such as a mail server that allows servelts t extend its functionality perhaps
by performing a virus scan on all attached documents or handling mail filtering tasks.

Servlets provide a Java-based solution used to address the problems currently associated
with doing server-side programming including inextensible scripting solutions platform-
specific API’s and incomplete interface.

Servlets are objects that conform to a specific interface that can be plugged into a Java-
based server.Servlets are to the server-side what applets are to the server-side what
applets are to the client-side-object byte codes that can be dynamically loaded off the net.
They differ form applets in than they are faceless objects(with out graphics or a GUI
component).They serve as platform independent, dynamically loadable,plugable helper
byte code objects on the server side that can be used to dynamically extend server-side
functionality.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 14


Student Notifying System

For example an HTTP servlet can be used to generate dynamic HTML content
when you use servlets to do dynamic content you get the following advantages:
 They’re faster and cleaner then CGI scripts
 They use a standard API( the servlet API)
 They provide all the advantages of Java (run on a variety of servers without
needing to be rewritten)

Advantages of the servlet API


One of the great advantages of the servlet API is protocol independent. It assumes
nothing about:
 The protocol being used to transmit on the net
 How it is loaded
 The server environment it will be running in
 These quantities are important, because it allows the Servlet API to be
embedded in many different kinds of servers.There are other advantages to
the servelt API as well These include:
 It’s extensible-you can inherit all your functionality from the base classes
made available to you
 It’s simple small, and easy to use.

Features of Servlets:
 Servlets are persistent.Servlet are loaded only by the web server and can
maintain services between requests.
 Servlets are fast. Since servlets only need to be l\loaded once, they offer
much better performance over their CGI counterparts.
 Servlets are platform independent.
 Servlets are extensible Java is a robust, object-oriented programming
language, which easily can be extended to suit your needs.
 Servlets are secure
 Servlets are used with a variety of client.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 15


Student Notifying System

Servlets are classes and interfaces from tow packages,javax .servlet and
javax.servlet.http.The java.servlet package contains classes t support generic, protocol-
independent servlets.The classes in the javax.servelt.http package To and HTTP specific
functionality extend these classes

Every servlet must implement the javax.servelt interface.Most servlets implement


it by extending one of two classes.javax.servlet.GenericServlet or
javax.servlet.http.HttpServlet.A protocol-independent servlet should subclass Generic-
Servlet.while an Http servlet should subclass HttpServlet, which is itself a subclass of
Generic-servlet with added HTTP-specific functionality.

Loading Servlets:
Servlets can be loaded from their places. From a directory that is on the
CLASSPATH. The CLASSPATH of the JavaWebServer includes service root/classes/,
which is where the system classes reside

From the <SERVICE_ROOT/servlets/directory.This is not in the server’s


classpath. A class loader is used to create servlets form this directory.New servlets can be
added-existing servlets can be recompiled and the server will notice these changes. From
a remote location.For this a code base like http://nine.eng/classes/foo/ is required in
addtion to the servlet’s class name.Refer to the admin Gui docs on servlet section to see
how to set this up.

Loading Remote Servlets


Remote servlets can be loaded by:

 Configuring the admin Tool to setup automatic loading of remote servlets.


 Selectiong up server side include tags in .html files
 Defining a filter chain Configuration

Invoking Servlets
A servlet invoker is a servlet that invokes the “server” method on a named
servlet.If the servlet is not loaded in the server,then the invoker first loades the
servlet(either form local disk or from the network) and the then invokes the “service”

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 16


Student Notifying System

method.Also like applets,local servlets in the server can be identified by just the class
name.In other words, if a servlet name is not absolute.it is treated as local.

A Client can Invoke Servlets in the Following Ways:

 The client can ask for a document that is served by the servlet.
 The client(browser) can invoke the servlet directly using a URL, once it
has been mapped using the SERVLET ALIASES Section of the admin
GUI
 The servlet can be invoked through server side include tags.
 The servlet can be invoked by placing it in the servlets/directory
 The servlet can be invoked by using it in a filter chain

The Servlet Life Cycle:-


The Servlet life cycle is one of the most exciting features of Servlets.This life
cycle is a powerful hybrid of the life cycles used in CGI programming and lower-level
NSAPI and ISAPI programming.

The servlet life cycle allows servlet engines to address both the performance and
resource problems of CGI and the security concents of low level server API
programming.

Servlet life cycle is highly flexible Servers hava significant leeway in how they
choose to support servlets.The only hard and fast rule is that a servlet engine must confor
to the following life cycle contact:

 Create and initialize the servlets


 Handle zero or more service from clients
 Destroy the servlet and then garbage Collects it.

It’s perfectly legal for a servlet t be loaded, created an initialzed in its own JVM,only
to be destroyed an dgarbage collected without hancdling any clientrequest or after
handling just one request

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 17


Student Notifying System

The most common and most sensible life cycle implemntations for HTTP servelts
are:
Single java virtual machine and astatine persistence.

Init and Destroy:-


Just like Applets servlets can define init() and destroy() methods, A servlets
init(ServiceConfig) method is called by the server immediately after the server constructs
the servlet’s instance.Depanding on the server and its configuration, this can be at any of
these times
 When the server states
 When the servlet is first requested, just before the service() method is
invoked
 At the request of the server administrator

In any case, nit() is guaranteed to be called before the servlet handles its first
request
The init() method is typically used to perform servlet initialization creating or
loading objects that are used by the servlet in handling of its request. In order to providing
a new servlet any information about itself and its environment, a server has to call a
servelts init() method and pass an object that implement the ServletConfig interface.

This ServletConfig object supplies a servlet with information about its


initialization parameters.These parameters are given to the servlets and are not associated
with any single request.They can specify initial values, such as where a counter should
begin counting, or default values, perhaps a template to use when not specified by the
request,

The server calls a servlet’s destroy() method when the servlet is about to be
unloaded. In the destroy() method, a servlet should free any resources it has acquired that
will not be garbage collected. The destroy() method also gives a servlet a chance to write
out its unsaved. cached information or any persistent information that should be read
during the next call to init().

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 18


Student Notifying System

Session Tracking:
HTTP is a stateless protocol, it provides no way for a server to recognize that a
sequence of requests is all from the same client. This causes a problem for application
such as shopping cart applications. Even in chat application server can’t know exactly
who’s making a request of several clients.
The solution for this is for client to introduce itself as it makes each request, Each
clients needs to provide a unique identifier that lets the server identify it, or it needs to
give some information that the server can use to properly handle the request, There are
several ways to send this introductory information with each request Such as:

USER AUTHORIZATION:

One way to perform session tracking is to leverage the information that


comes with
User authorization. When a web server restricts access to some of its resources to
only those clients that log in using a recognized username and password. After the client
logs in, the username is available to a servlet through getRemoteUser()

URL Rewriting:

URL rewriting is another way to support anonymous session tracking, With URL
rewriting every local URL the user might click on is dynamically modified. or rewritten,
to include extra, information. The extra information can be in the deform of extra path
information, added parameters, or some custom, server-specific.URL change. Due to the
limited space available in rewriting a URL, the extra information is usually limited to a
unique session.

Persistent Cookies:

A fourth technique to perform session tracking involves persistent cookies. A


cookie is a bit of information. sent by a web server to a browser that can later be read
back form that browser. When a browser receives a cookie, it saves the cookie and there
after sends the cookie back to the server each time it accesses a page on that server,

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 19


Student Notifying System

subject to certain rules. Because a cookie’s value can uniquely identify a client, cookies
are often used for session tracking.

Portability:

As servlets are written in java and conform to a well defined and widely accepted
API.they are highly portable across operating systems and across server implementation

Power:

Servlets can harness the full power of the core java. API’s: such as Networking
and Url access, multithreading, image manipulation, data compression, data base
connectivity, internationalization, remote method invocation(RMI) CORBA connectivity,
and object serialization, among others,

Efficiency And Endurance:

Servlet invocation is highly efficient, Once a servlet is loaded it generally remains


in the server’s memory as a single object instance, There after the server invokes the
servelt to handle a request using a simple, light weighted method invocation .Unlike the
CGI, there’s no process to spawn or interpreter to invoke, so the servlet can begin
handling the request almost immediately, Multiple, concurrent requests are handled the
request almost immediately. Multiple, concurrent requests are handled by separate
threads, so servlets are highly scalable.

Servlets in general are enduring objects. Because a servlets stays in the server’s
memory as a single object instance. it automatically maintains its state and can hold onto
external resources, such as database connections.

Safety:

Servlets support safe programming practices on a number of levels.

As they are written in java,servlets inherit the strong type safety of the java
language. In addition the servlet API is implemented to be type safe. Java’s automatic
garbage collection and lack of pointers mean that servlets are generally safe from memory
management problems like dangling pointers invalid pointer references and memory
leaks.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 20


Student Notifying System

Servlets can handle errors safely, due to java’s exception – handling mechanism.
If a servlet divides by zero or performs some illegal operations, it throws an exception
that can be safely caught and handled by the server.

A server can further protect itself from servlets through the use of java security
manager.A server can execute its servlets under the watch of a strict security manager.

Elegance:

The elegance of the servlet code is striking .Servlet code is clean, object oriented
modular and amazingly simple one reason for this simplicity is the served API itself.
Which includes methods and classes to handle many of the routine chores of servlet
development. Even advanced to operations like cookie handling and session tracking
tracking are abstracted int convenient classes.

Integration:

Servlets are tightly integrated with the server. This integration allows a servlet to
cooperate with the server in two ways . for e.g.: a servlet can use the server to translate
file paths, perform logging, check authorization, perform MIME type mapping and in
some cases even add users to the server’s user database.

Extensibility and Flexibility:

The servlet API is designed to be easily extensible. As it stands today the API
includes classes that are optimized for HTTP servlets.But later it can be extended and
optimized for another type of servlets.It is also possible that its support for HTTP servlets
could be further enhanced.

Servlets are also quite flexible, Sun also introduced java server pages. which offer
a way to write snippets of servlet code directly with in a static HTML page using syntax
similar to Microsoft’s Active server pages(ASP).

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 21


Student Notifying System

JDBC
What is JDBC?
Any relational database. One can write a single program using the JDBC API,and
the JDBC is a Java Api for executing SQL,Statements(As a point of interest JDBC is
trademarked name and is not an acronym; nevertheless,Jdbc is often thought of as
standing for Java Database Connectivity. It consists of a set of classes and interfaces
written in the Java Programming language.JDBC provides a standard API for
tool/database developers and makes it possible to write database applications using a pure
Java API
Using JDBC, it is easy to send SQL statements to virtually program will be able to
send SQL .statements to the appropriate database. The Combination of Java and JDBC
lets a programmer writes it once and run it anywhere.

What Does JDBC Do?


Simply put,JDBC makes it possible to do three things

o Establish a connection with a database


o Send SQL statements
o Process the results
o JDBC Driver Types
o The JDBC drivers that we are aware of this time fit into one of four categories
o JDBC-ODBC Bridge plus ODBC driver
o Native-API party-java driver
o JDBC-Net pure java driver
o Native-protocol pure Java driver

An individual database system is accessed via a specific JDBC driver that


implements the java.sql.Driver interface. Drivers exist for nearly all-popular RDBMS
systems, through few are available for free. Sun bundles a free JDBC-ODBC bridge
driver with the JDK to allow access to a standard ODBC,data sources, such as a

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 22


Student Notifying System

Microsoft Access database, Sun advises against using the bridge driver for anything other
than development and very limited development.

JDBC drivers are available for most database platforms, from a number of vendors
and in a number of different flavours. There are four driver categories

Type 01-JDBC-ODBC Bridge Driver


Type 01 drivers use a bridge technology to connect a java client to an ODBC
database service. Sun’s JDBC-ODBC bridge is the most common type 01 driver. These
drivers implemented using native code.

Type 02-Native-API party-java Driver


Type 02 drivers wrap a thin layer of java around database-specific native code
libraries for MySql databases, the native code libraries might be based on the OCI(Oracle
call Interface) libraries, which were originally designed for c/c++ programmers, Because
type-02 drivers are implemented using native code. in some cases they have better
performance than their all-java counter parts. They add an element of risk, however,
because a defect in a driver’s native code section can crash the entire server

Type 03-Net-Protocol All-Java Driver


Type 03 drivers communicate via a generic network protocol to a piece of custom
middleware. The middleware component might use any type of driver to provide the
actual database access. These drivers are all java, which makes them useful for applet
deployment and safe for servlet deployment

Type-04-native-protocol All-java Driver


Type o4 drivers are the most direct of the lot. Written entirely in java, Type 04
drivers understand database-specific networking. protocols and can access the database
directly without any additional software

JDBC-ODBC Bridge
If possible use a Pure Java JDBC driver instead of the Bridge and an ODBC
driver. This completely eliminates the client configuration required by ODBC. It also
eliminates the potential that the Java VM could be corrupted by an error in the native

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 23


Student Notifying System

code brought in by the Bridge(that is, the Bridge native library, the ODBC driver manager
library, library, the ODBC driver library, and the database client library)

WHAT IS The JDBC-ODBE Bridge ?


The JDBC-ODBC Bridge is a Jdbc driver, which implements JDBC operations by
translating them into ODBC operations. To ODBC it appears as a normal application
program. The Bridge is implemented as the sun.jdbc.odbc Java package and contains a
native library used to access ODBC. The Bridge is joint development of Intersolv and
Java Soft.

MySQL
MySQL, the most popular Open Source SQL database management system, is
developed, distributed, and supported by Oracle Corporation.

MySQL is a database management system.


A database is a structured collection of data. It may be anything from a simple
shopping list to a picture gallery or the vast amounts of information in a corporate
network. To add, access, and process data stored in a computer database, you need a
database management system such as MySQL Server. Since computers are very good at
handling large amounts of data, database management systems play a central role in
computing, as standalone utilities, or as parts of other applications.

MySQL databases are relational.


A relational database stores data in separate tables rather than putting all the data
in one big storeroom. The database structures are organized into physical files optimized
for speed. The logical model, with objects such as databases, tables, views, rows, and
columns, offers a flexible programming environment. You set up rules governing the
relationships between different data fields, such as one-toone, one-to-many, unique,
required or optional, and “pointers” between different tables. The database enforces these
rules, so that with a well-designed database, your application never sees inconsistent,
duplicate, orphan, out-of-date, or missing data. The SQL part of “MySQL” stands for
“Structured Query Language”. SQL is the most common standardized language used to
access databases. Depending on your programming environment, you might enter SQL
directly (for example, to generate reports), embed SQL statements into code written in

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 24


Student Notifying System

another language, or use a language-specific API that hides the SQL syntax. SQL is
defined by the ANSI/ISO SQL Standard. The SQL standard has been evolving since 1986
and several versions exist. In this manual, “SQL-92” refers to the standard released in
1992, “SQL:1999” refers to the standard released in 1999, and “SQL:2003” refers to the
current version of the standard. We use the phrase “the SQL standard” to mean the
current version of the SQL Standard at any time.

MySQL Server works in client/server or embedded systems.


The MySQL Database Software is a client/server system that consists of a multi-
threaded SQL server that supports different backends, several different client programs
and libraries, administrative tools, and a wide range of application programming
interfaces (APIs). We also provide MySQL Server as an embedded multi-threaded library
that you can link into your application to get a smaller, faster, easier-to-manage
standalone product.

JAVA SCRIPT
The Java Script Language
JavaScript is a compact , object-based scripting language for developing client and
server internet applications. Netscape Navigator 2.0 interprets JavaScript statements
embedded directly in an HTML page. and Livewire enables you to create server-based
applications similar to common gateway interface(cgi) programs.

In a client application for Navigator, JavaScript statements embedded in an


HTML Page can recognize and respond to user events such as mouse clicks form Input,
and page navigation.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 25


Student Notifying System

DATA FLOW DIAGRAMS


1. Context Level DFD:
The major objective of a context diagram is to provide a graphical representation
of the whole system. As I stated earlier it consists of all the system boundaries, all the
external entities that interact with the system and major data flow between the entities in
the system. Refer to the following diagram.

Admin

Viewing the Administration


Administrates Registration
Summary Scheduling
Student
Registration
Student 0
Student Recruitment
Tutorials Session
Process Process Events/Plac
BCA NEWS ements
Recruitment
Faculty
Process
Faculty
Process

Figure : Context Diagram

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 26


Student Notifying System

Figure: Level-1 Login Authentication

PersonalInfo
D15 student_master

CourseInfo Student
D16 course_master

NotificationInfo
D17 notification_master

Books D18 catalog

Student Details

Figure 3.4 show the level –1 DFD of Account Updating process for lecturer. This
is the sub process from O-level DFD on viewing and updating lecturer’s details. This
process is for lecturer use only. Any changes to lecturer details will be stored in lecture
file.

Provider Details
Figure 3.5 shows the level –1 DFD of Activate Session process. This is the sub
process from level O DFD, which focus on viewing the actual tutorial and learning
environment. In this process, once the user has chosen their respective session, they will
be directed to a learning environment for that particular session. The session details will
be accessed from session file.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 27


Student Notifying System

UML DIAGRAMS
Unified Modeling Language:
The Unified Modeling Language allows the software engineer to express an
analysis model using the modeling notation that is governed by a set of syntactic semantic
and pragmatic rules.
A UML system is represented using five different views that describe the system
from distinctly different perspective. Each view is defined by a set of diagram, which is
as follows.
 User Model View
i. This view represents the system from the users perspective.
ii. The analysis representation describes a usage scenario from the
end-users perspective.
 Structural model view
i. In this model the data and functionality are arrived from inside the
system.
ii. This model view models the static structures.
 Behavioral Model View
It represents the dynamic of behavioral as parts of the system, depicting
the interactions of collection between various structural elements described
in the user model and structural model view.
 Implementation Model View
In this the structural and behavioral as parts of the system are represented
as they are to be built.
 Environmental Model View
In this the structural and behavioral aspects of the environment in which
the system is to be implemented are represented.

UML is specifically constructed through two different domains they are:


 UML Analysis modeling, this focuses on the user model and structural model
views of the system.
 UML design modeling, which focuses on the behavioral modeling,
implementation modeling and environmental model views.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 28


Student Notifying System

Use case Diagrams represent the functionality of the system from a user’s point of
view. Use cases are used during requirements elicitation and analysis to represent the
functionality of the system. Use cases focus on the behavior of the system from external
point of view.

Actors are external entities that interact with the system. Examples of actors
include users like administrator, bank customer …etc., or another system like central
database.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 29


Student Notifying System

SNAP SHOTS OF THE PROJECT :

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 30


Student Notifying System

IMPLEMENTATION :-

<%@page import="java.sql.Date"%>
<%@page import="sahyadri.Dbconnection"%>
<%@page import="sahyadri.Mail"%>
<%@page import="java.sql.*" %>
<%@page import="java.util.*" %>
<%@page import="javax.script.*" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

<title>event processing</title>
</head>
<body>

<%
Connection con=sahyadri.Dbconnection.getConnection();

try{
PreparedStatement ps,ps1;
int event_id=0;
String query="SELECT count(*) FROM `events` ";
ps=con.prepareStatement(query);
ResultSet rs= ps.executeQuery();
if(rs.next()){
event_id=rs.getInt(1)+1;
}

query="INSERT INTO `sahyadri_bca`.`events` (`event_no`, `event_name`, `commence_date`,


`commence_time`, `conveyner_id`, `event_details`, `type`, `entry_fee`) VALUES (?,?,?,?,?,?,?,?)";

ps=con.prepareStatement(query);

ps.setInt(1,event_id);

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 31


Student Notifying System

ps.setString(2,request.getParameter("event_name"));
ps.setString(3,request.getParameter("commence_date"));
ps.setString(4,request.getParameter("commence_time"));
ps.setString(5,request.getParameter("conveynor_id"));
ps.setString(6,request.getParameter("event_details"));
ps.setString(7,request.getParameter("event_type"));
ps.setInt(8,Integer.parseInt(request.getParameter("entry_fee")));
int k= ps.executeUpdate();
if(k==1)
{
response.sendRedirect("event_registration.jsp");
}
else
{
out.print("please update the event data properly");
}
String query1="select mail_id from reg_student";
ps1=con.prepareStatement(query1);
ResultSet rs1= ps1.executeQuery();
while(rs1.next()){
String mail_id=rs1.getString(1);
Mail m = new Mail();
String msg ="New Event Has Been Updated Please Register For The Event Soon";
m.secretMail(msg,mail_id,mail_id);
}
}
catch(Exception e){
e.printStackTrace();
}
%>
</body>
</html>

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 32


Student Notifying System

UML DIAGRAMS
Use Case Diagram

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 33


Student Notifying System

Usecase diagram for admin.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 34


Student Notifying System

Class Diagram

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 35


Student Notifying System

Sequence Diagram for Student:

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 36


Student Notifying System

Sequence Diagram for Administrator:

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 37


Student Notifying System

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 38


Student Notifying System

State Diagram for Administrator:

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 39


Student Notifying System

NORMALIZATION
A Database is a collection of interrelated data stored with a minimum of
redundancy to serve many applications. The database design is used to group data into a
number of tables and minimizes the artificiality embedded in using separate files. The
tables are organized to:

Reduced duplication of data.


Simplify functions like adding, deleting, modifying data etc..,
Retrieving data
Clarity and ease of use
More information at low cost

Normalization
Normalization is built around the concept of normal forms. A relation is said to be
in a particular normal form if it satisfies a certain specified set of constraints on the kind
of functional dependencies that could be associated with the relation. The normal forms
are used to ensure that various types of anomalies and inconsistencies are not introduced
into the database.

First Normal Form:


A relation R is in first normal form if and only if all underlying domains contained
atomic values only.

Second Normal Form:


A relation R is said to be in second normal form if and only if it is in first normal
form and every non-key attribute is fully dependent on the primary key.

Third Normal Form:


A relation R is said to be in third normal form if and only if it is in second normal
form and every non key attribute is non transitively depend on the primary key.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 40


Student Notifying System

CONCLUSION
This project is aimed to provide services to students over Internet, each
student is given with a unique id and as the student logs on into the system he
will be given access to anonymous number of sections. The ‘administrative user
interface’ concentrates on the consistent information that is practically, part of
the organizational activities and which needs proper authentication for the data
collection. These interfaces help the administrators with all the transactional
states like Data insertion, Data deletion and Date updating along with the
extensive data search capabilities. The ‘operational or generic user interface’
helps the end users of the system in transactions through the existing data and
required services. The operational user interface also helps the ordinary users in
managing their own information in a customized manner as per the included
flexibilities This paper assists in modifying the existing system to site based
system. This is a paperless work. It can be monitored and controlled remotely. It
reduces the manpower required. It provides accurate information always.
Malpractice can be reduced. All gathered and extra information can be saved and
can be accessed at any time. The data which is stored in the project helps in
taking intelligent and quick decisions by the management. So it is better to have a
Web Based Information Management system. All the stakeholders staff members
can get the desired information without delay. This system is essential in the
colleges/hostels and universities.

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 41


Student Notifying System

BIBLIOGRAPHY

 JAVA Complete Reference


 Java Script Programming by Yehuda Shiran
 Mastering JAVA Security
 JAVA Security by Scotl oaks
 https://www.javatpoint.com/servlet-tutorial
 https://www.tutorialspoint.com/servlets/

Dept. of Computer Science, Sahyadri Science College, Shivamogga Page 42

You might also like