Office Management System A Java Project
Office Management System A Java Project
Speedy and efficient information processing is crucial to our socially and highly
developed technology. Computer can help the intolerable burden of handling the
ever increasing amount or information with government department, public
services and business concerns expected to contain because of their ability to
analyze information as well as to retain, update and reproduce it because of their
versality to present it in a variety of forms. This may also to some extent lead to
problems occurring due to information explosion.
About Project
For this efficient software the first and the foremost thing is that all the
requirements should be known before hand and the developer should devote its
effort for the completion of that requirement which are demanded by the
customer should be fulfilled. This system can be used in various education
departments and can distribute the copies of the system among the management
and staff members for the required information of their customer.
This very handy project for any user and includes following features:-
● for the help of user it displays each and every detail about required topics
1
Software Development Life Cycle
● Prepare the project charter which will guide about the remainder of the
project
2
● ENTITY RELATIONSHIP DIAGRAM – It models the functioning of
the data and their relationship.
● Automation boundary
● Report layouts
● Layouts of the source documents
● Screen Layouts for the data entry form
● Menu
The project Post office management system is created in 4GL GUI based
system so that it is easy to handle. It also increases the efficiency of the end user,
because it will reduce the reluctant jobs, which are tedious to complete. The Post
3
office management system also has automated capability to complete job, it
automatically generates the reports, so it reduces the work manually.
2. It reduces the tedious jobs like reluctant work, long procedures, automated
report generation, up to date information.
3. It will improve the Post Office Management, since all the information is
available whenever required.
9. Better security
10. Economical.
4
Deficiencies of the manual system:
3. Prompts updating not possible – Changes are quite natural in all walks of
life. Information and stored data also changes from time to time. These
changes should be incorporated in the working also to keep the information
up to date. However, bringing about changes through the manual system is a
slow and tedious process because of which inaccurate information storage
occurs.
5
Goals of the proposed system
6
HARDWARE AND SOFTWARE REQUIREMENTS
To make the application smoothly and can be used to its optimum level
following Hardware and Software requirements are required:
128 MB of RAM
The Front end is the software which manages the logical representation of data
which Back end manages to manipulate and store data.
7
Introduction
What is java?
Java is a general purpose object oriented programming language . It is the first
programming language that is not tied to any particular hardware or operating
system .The language is based on the concept of an object. Java is highly derived
from C++ . Most striking feature of the language is that it is platform neutral
language.
There were five primary goals in the creation of the Java language:
Java tools
In order to write java application or applets ,one need more than a language . The
tools that lets one to write , test , debug programs.
Java features
● Compiler and Interpreted
● Platform independent
● Simple
● Secure
● Familiar
● Portable
● Object-Oriented
● Robust
● Multithreaded
● High performance
● Distributed
● Dynamic
Compiler and Interpreted - There is a java compiler , named javac . The java
compiler takes input source code files (these files typically have the ext.java) and
converts them into compiled bytecode files.The java Interpreter known as javac
can be used to execute java application .The interpreter translates bytecode
directly into program actions.
8
Platform independent - Java programs can be easily moved from one computer
to another, anywhere and anytime.Changes and upgrades made in operating
systems, processors and system resources will not force any changes in java
programs.
Simple - Java is designed to be easy for programmer to learn and use efficiently.
Secure- When we use a java compatible web browser, we can safely download
java applets without fear of virus infection. Java achieves this protection by
confining a java program to java execution environment and not allowing it
access to other parts of the computer.
Robust -It provides many safeguards to ensure reliable code. It has strict compile
time and run time checking for data types. Designed as a garbage-collected
language relieving the programmers and also incorpates the concept of exception
handling which captures series errors.
Distributed - It has ability to share both data and programs. Java applications can
open and access remote objects on internet which enables multiple programmers
at multiple remote locations to collaborate and work together on single project.
9
Automatic garbage collection - One idea behind Java's automatic memory
management model is that programmers should be spared the burden of having
to perform manual memory management. In some languages the programmer
allocates memory to create any object stored on the heap and is responsible for
later manually deallocating that memory to delete any such objects. If a
programmer forgets to de-allocate memory or writes code that fails to do so in a
timely fashion, a memory leak can occur: the program will consume a potentially
arbitrarily large amount of memory. In addition, if a region of memory is de-
allocated twice, the program can become unstable and may crash.
10
Bytecode Java Interpreter Machine code
Virtual Machine Real Machine
Inheritance - Inheritance is the process by which objects of one class acquire the
property of objects of another class. Each subclass inherits state .However,
subclasses are not limited to the states and behaviors provided to them by their
superclass. Subclasses can add variables and methods to the ones they inherit
11
from the superclass. It supports the concept of hierarchical classification it also
provides the use of reusability. .
Polymorphism - This means the ability to take more than one form. An
operation may exhibit different behaviour in different instances. The behaviour
depends upon the types of data used in the operation. It plays an important role
in allowing objects having different internal structures to share external interface.
12
VERSION HISTORY
13
Java SE - Java Database Connectivity (JDBC)
The Java Database Connectivity (JDBC) API is the industry standard for
database-independent connectivity between the Java programming language and
a wide range of databases – SQL databases and other tabular data sources, such
as spreadsheets or flat files. The JDBC API provides a call-level API for SQL-
based database access.
JDBC technology allows you to use the Java programming language to exploit
"Write Once, Run Anywhere" capabilities for applications that require access to
enterprise data. With a JDBC technology-enabled driver, you can connect all
corporate data even in a heterogeneous environment.
JDBC Architecture
The JDBC API contains two major sets of interfaces: the first is the JDBC API
for application writers, and the second is the lower-level JDBC driver API
for driver writers. JDBC technology drivers fit into one of four categories.
Applications and applets can access databases via the JDBC API using
pure Java JDBC technology-based drivers, as shown in this figure:
14
Left side, Type 4: Direct-to-Database Pure Java Driver
This style of driver converts JDBC calls into the network protocol used
directly by DBMSs, allowing a direct call from the client machine to the
DBMS server and providing a practical solution for intranet access.
The graphic below illustrates JDBC connectivity using ODBC drivers and
existing database client libraries.
15
client machine that uses a JDBC-ODBC Bridge. Sun provides a JDBC-
ODBC Bridge driver, which is appropriate for experimental use and for
situations in which no other driver is available.
Sun worked with an array of companies in the industry to create and rapidly
establish the JDBC API as the industry-standard, open interface for Java
applications to access databases.
Industry Momentum
Leading database, middleware and tool vendors have been building support for
JDBC technology into many new products. This ensures that customers can build
portable Java applications while choosing from a wide range of competitive
products for the solution best suited to their needs. See the Industry Support page
for a list of companies that are shipping products with support for JDBC
technology.
16
maintain.
17
Driver Manager Connection Statement ResultSet
Driver
Database
Database
The JDBC architecture is based on a collection of java interfaces and classes that
together enable you to connect to data sources , to create and execute SQL statements
and to retrieve and modify data in a database.
Key Features
No Installation
←
A pure JDBC technology-based driver does not require special installation; it
is automatically downloaded as part of the applet that makes the JDBC calls.
18
identify and connect to a data source, using a DataSource object, that makes
code even more portable and easier to maintain.
19
SQL-STRUCTURED QUERY LANGUAGE
● Data Defination Language (DDL) – DDL statements are used to describe the
tables and the data they contain. The subset of SQL statements used for modeling
the structure (rather than the contents) of a database or cube. The DDL gives you
the ability to create, modify, and remove databases and database objects.
Primary key – Primary key constraints identify the column or set of columns
whose values uniquely identify a row in a table. No two rows in a table can have
the same primary key value. You cannot enter a NULL value for any column in a
primary key.
20
Insert - The Insert logical operator inserts each row from its input into the object
specified in the Argument column. To insert the data into a relation we
either specify a tuple to be inserted or write a query.
Delete - The Delete logical operator deletes from an object rows that satisfy the
optional predicate in the Argument column. We can delete only whole
tuples; we cannot delete values on only particular attributes.
Update - The Update logical operator updates each row from its input in the
object specified in the Argument column. It provides a way of modifying
existing data in a table update statement do not return a result set, they
merely modify data in the database.
If a WHERE :() predicates is present, only those rows that satisfy this predicate
are updated.
If a SET :() predicate is present, it indicates the value to which each updated
column is set.
If a DEFINE :() predicate is present, this lists the values that this operator
defines.
Alter - Adds or removes files, file groups, table. Modifies a table definition by
altering, adding or dropping columns and constraints, or by disabling or
enabling constraints and triggers. Can also be used to modify the attributes of
files and file groups, such as changing the name or size of a file.
21
APPLETS
What is an Applet?
Applets are small applications that are accessed on an internet server, transported
over the internet, automatically installed and as a part of web document. It can
perform arithmetic operations, display graphics, play sounds, accept user input,
and create animation and interactive games.
Capabilities
Java applets can be used to build full featured graphical user interface. Applets
can communicate over the internet to a host server and even communicate with
other applets on a form.
Limitation
For java to be truly successful. However, the client security has to be completely
assured because of this security measures place some limitations on java applets.
By default, applets cannot communicate with any server other than the
originating server. Applets also cannot read or write files to the local file system.
Born or initialization state: - Applet enters the initialization state when it is first
loaded. This is achieved by calling the init () method of applet class. The applet
is born. If we want then we can override the initialization more than once in the
applet program.
Running state - Applet enters the running state when the system calls the start ()
method of applet class. This occurs automatically after the applet is initialized.
We can override the start () method to create a thread to control the applet.
Idle or stopped state - An applet becomes idle when it is stopped from running.
Stopping occurs automatically when we leave the page containing running
22
applet. We can also do so by calling the stop () method explicitly. Stop () method
can be overridden.
Display state - Applet moves to the display state whenever it has to perform
some output operations on the screen. This happens immediately after the applet
enters into running state. The paint () method is called to accomplish this task.
Almost every applet will have a paint method. We can override this method.
23
Abstract Windowing Toolkit
• Generate Colors.
• Draw graphics.
• Add GUI components like push buttons, scrollbars etc to your applications.
• Handle user input from mouse and keyboard.
• Create Containers.
• Classes like Layout Managers helps in automatically positioning a GUI
object when we add it to the container.
24
SWING
Jframe and Component – Jframe extends the AWT class Frame. It contains
additional features that enable it to support Swing components. JComponent
extends the AWT component and Container classes. It is the top level class for
all Swing components and provides Swing pluggable look and feel.
Here are some of the Swing component classes:
CLASS DESCRIPTION
Abstract Button Abstract super class for Swing buttons.
Button Group Encapsulates a mutually exclusive set of buttons.
Image Icon Encapsulates an icon.
JApplet The SWING version of APPLET.
JButton The SWING push button class.
JCheckBox The SWING check box class.
JComboBox Encapsulates a combo box .
JLabels The SWING version of a label.
JRadioButton The SWING version of a radio button.
JScrollPane Encapsulates a scrollable window.
JTabbedPane Encapsulates a tabbed window.
JTextField The SWING version of Text field.
JTree Encapsulates a tree based-control.
● Icons – Icons are encapsulated by the Image Icon class, which paints an icon
from an image.
25
● JLabel – Labels are the instances of the JLabel class which extends
JComponent. It can display text or icon. These are passive controls that do not
support any interaction with the user.
26
3. Further the Swing components can provide pluggable look and feel,
which means that it is easy to substitute another appearance and behavior
for an element.
27
FORMS LAYOUT
28
WELCOME WINDOW
29
USER-ID
30
OPTION WINDOW
31
PARCEL FORM
32
MONEY ORDER FORM
33
SPEED POST FORM
34
REGISTRY FORM
35
E-CARD FORM
36
FORAIGN MAIL
37
DATA BASE DIAGRAM
38
LIMITATIONS
Although I have tried to do the best and try to do well all the things that are
possible in a Payroll System, but still the system contains some of the
limitations.
The reason of these limitations is the time constraints. Time is the major
problem. I have to deliver the project in a particular time period. That’s why I
have to leave some topics that actually I want to cover, I am still working on this
software and my next goal is to remove these limitations and develop a more
efficient and elegant system.
After removing these and other minor limitations I hope this project will be very
efficient and effective.
39
Conclusion
40
BIBLIOGRAPHY
7. Java2 – CMC
41