Lyrics.Com

Lyrics.Com is a website that allows users to share lyrics of songs. Users must register to add songs. It allows registered users to login and search for lyrics based on either song title or/and singer.

It provides all the common operations related to users such as registration, login, change password and forgot password.

Architecture Of the Project

This project uses JSPs to interact with users - view. JavaBeans are used to handle business logic. JSPs pass data to JavaBeans.

JavaBeans access DAO (Data Access Layer) layer to access database. The entire data access is centralized in DAO.

DAOs use JDBC to take to Oracle Database 10g.

So overall architecure is - JSP -> JavaBean -> DAO -> JDBC -> Oracle Database.

It also uses a filter (Intercepting Filter design pattern) to ensure only authenticated users access secured pages.

Products used in this project

Steps to download and deploy this project

  1. Download lyrics.rar. The .rar file contains the entire source code for the project. Unzip the file into C:\ so that c:\lyrics folder is create with all the components of the project.
  2. Go to properties of the project using popup menu. Select libraries node and delete existing libraries using  Remove button. Then add - mail.jar and activation.jar (for javamail) and Oracle - ojdbc14.jar. You have to add these .jar files to the project using Add Jar/Folder button.
  3. Create lyrics account with password lyrics in Oracle10g Express Edition. This must be done after you log in as SYSTEM user. Then create tables listed below.
    create user lyrics identified by lyrics;
    grant all privileges to lyrics;
    
    
    connect lyrics/lyrics
    
    create table users 
    ( uname  varchar(20)  primary key,
      pwd   varchar(20)   not null,
      email  varchar(50)  unique,
      dor    date,
      occupation varchar(200)
    );
    
    
    create table songs
    ( songid   number(5)  primary key,
      song     varchar(100),
      singer   varchar(100),
      lyrics   varchar(4000),
      uname    varchar(20)  references users(uname),
      addedon  date
    );
    
    create sequence songid start with 1 increment by 1  nocache;
    
  4. Create an account in CMail Server (Mail Server from youngzsoft.net and configure Outlook express to add a mail account for the user created in CMail Server. At the time of registering user in the project using register.jsp, use this email address for user so that you can test forgot password feature using this email address.
  5. Start NetBeans 6.5. Open the project from c:\lyrics folder.
  6. Run this project - you must see login.jsp page.