Please deploy your application on CS3, and upload all source files to CSNS. The source files should include all the source code, documentation (optional), and an HTML file final.html which contains a hyperlink to your application on the CS3 server. Note that file uploading will be disabled automatically after the due time, and late submission will not be accepted.
In this exam you are going to develop a contact manager web application that is similar to the ones that can be found on many smart phones.
Your application must use a database to store the data, and you must submit an SQL script file final.sql which contains the statements to create and populate all the tables for the application. Your implementation must follow the MVC architecture and use JDBC for database access. For simplicity, we assume that all user input are correct so you do not need to do input validation.
The main page of the application displays the names of the contacts managed by the application.
Contacts
A | |
Amy | (123) 456-7890 |
J | |
Joe | (234) 567-8901 |
John | (345) 678-9012 |
T | |
Tom | (567) 890-1234 |
Note that the contacts are listed in alphabetic order and are divided into groups based on the first letter of the name. For simplicity you may assume that contact names are unique.
A user may click on Add A Contact to add a new contact. For example:
Contacts - Add
Name: | |
---|---|
Phone: | |
After a contact is added, the user should be redirected to the contact list page.
Clicking on the name of a contact allows the user to see all the information about the contact as well as adding more fields to the contact:
Contacts - John
Name | John | |
Phone | (345) 678-9012 | |
Additional fields such as address, email, and so on can be added to the contact using the form at the end of the table. For example, after adding an email field, John's contact page would look like this:
Contacts - John
Name | John | |
Phone | (345) 678-9012 | |
john@gmail.com | ||
Note that there is no limit on how many fields a user can add to a contact.
Grading
- Display contact list (30pt)
- Add contact (20pt)
- Display contact (20pt)
- Add contact fields (30pt)
- final.html is missing or does not have the correct link to your application on the CS3 server (-10pt)
- Only features working correctly on the CS3 server will receive full credit. Partial credit will be given at my discretion.
- Please do not modify your files on the CS3 server after the due time. Doing so will be considered cheating.