Database Project: Contacts Database

A simple database project is a contacts database.

Skills required for the project:

  • Java Programming
    • JDBC API
  • SQL (create table, insert, delete, update, select, parameterized queries)
  • For Web Cleint
    • JSP Development
    • HTML Forms
    • Servlet Programming
  • For Desktop Client
    • Swing

Here is what you need.

1. A database engine (MySQL, Postgres SQL or any other open source relational database)
2. JDBC driver for the database you select
3. A simple command line or GUI front end for creating/dropping/altering tables, views
4. A simple tool for query (may be same as 3)
5. A servlet engine (Tomcat acts as both a web server and servlet engine)

We can do this in four simple milestones.

Contacts Milestone-1

1. Create one table with the following columns:

  • Name
  • emailid
  • phone

2. Create a simple Java application to

  • Add a record using a Form
  • View a set of records, select one and update any of the fields
  • Sort the list of contact by name

3. Create a simple web application with the same functionality as 2.

  • In this web application, the swing form will be replaced by a HTML form
  • Events will be replaced by JavaScript events
  • Use JSP for the server side

Contacts: Milestone2

Modify the contacts table to add the following:

1. imtype (instant messenger type - yahoo, skype, gtalk, aim, irc, msn messenger)
2. imid (the userid for instant messenger)
3. Street-1
4. Street-2
5. City
6. State
7. Pin-Code

Now you have a full contacts table with all the details

Create both the Spring and HTML interface to this extended table to incorporate all the new columns added

Contacts: Milestone3

In this milestone, we will add another table called relationships. Let us assume the emailid of a contact as the unique id.

Change the contacts table to include a password field (right now we will keep the password visible)

Here is the list of columns for Relationships:

  • emailid-1 (contact’s unique identifier)
  • emailid-2 (second contact’s unique identifier)
  • relationship (friend, family, teacher, other)

This table is used to specify a relationship of contact to another.

Additional User Interface Forms:

1. Create a login form

2. Let a user login with emailid and password

3. Create these menu items - View Contacts, MyProfile, Manage Relationships

4. View contacts lets you browse through contacts

5. My Profile displays your information (using the emailid at the time of login) and update any values (except email)

6. Manage Relationships allows you to display a list of contacts and specify a relation ship (you can do this by creating three checkboxes one for each type of relationship). If you want to restrict it to only one relationship, you can use radio buttons instead.

7. Modify MyProfile to display both your contact details and the list of relationships in a table below.

Posted in dbproject, nttf, rdb, rdf, size:small on August 26th, 2007 by Dorai | | 2 Comments