In this exam you will create a MVC application that will allow Users to search a database of quotations.  Your application shall use a MySQL database to store all quotation information.

Create the following pages:

50pts QuotationController/QuotationView

The QuotationController (Servlet) and QuotationView (JSP) will display a search text box and a button with the text “search”.

When a User submits a search, the page will re-display with the search form visible, but below the search form will be a table consisting of all quotations that match the search term that was specified.  Note, the quotation text and author should be searched.

A hyperlink that links to AddQuotationController should exist  near the top of your page.
50pts AddQuotationController/AddQuotationView

The AddQuotationController (Servlet) and AddQuotationView (JSP) will display two input text boxes, one for the quotation text, and one for the quotation author.  Optionally, you can add a third input field that allows a User to enter a comma-separated list of keywords that relate to the quotation.

Upon submission, you should verify that the quotation text and author are not empty.  Upon successful submission, you should add the quotation to the database.

Somewhere near the top of your page should be a link back to the QuotationController.

Extra Credit

10pts Display a hyperlink with the text “Delete” next to each quotation in your search results.  When clicked, the quotation should be removed from the database, and the page should be redisplayed with the same search query, but with the deleted quote missing.

10pts For each search result, highlight the text that matches the search query.  This may require the use of <span> tags and CSS.

10pts Allow a User to edit a quotation.  Editing a quotation is similar to creating a new quotation, except the existing quotation will be updated in the database instead of adding a new record to your database table.

10pts Allow a User to search keywords.

Total: 100pts