[Not for business] Simple 3-layer Servlets Program w/ MVC Design and 3-layer architecture. See my documents for details.

Job ID: 37965682

Budget: $30 – $250 CAD

I'm looking for an experienced Java developer to create a simple servlets program using JSP, JAVA, and bare HTML for a school project. The structure should follow a 3-layer architecture with the MVC design pattern. I have already designed the solution, just need some muscles to implement my ideas as I have not much time to do it myself.

Key Project Requirements:
- Version Control: Git
- Database Connection: MySQL
- Functionality: User registration and login, product catalog management (store, fetch, and modify products in the database)
- Use of Design Patterns: Singleton, Observer, MVC, and any others you feel are necessary

Additional Skills and Experience:
- JUnit
- Netbeans
- Password hashing techniques (if time permits, otherwise store passwords as plaintext.)
- Experience with implementing design patterns in Java applications
- Proficiency in MySQL and database management

Please provide examples of similar projects you've completed in the past. Prior experience with e-commerce applications is a plus.

PLEASE REFER TO INSTRUCTIONS.pdf FOR DETAILED INSTRUCTIONS.

I have prepared 3 diagrams to describe the functionality of my program, hopefully it kickstarts you to start coding asap. Please apply those and do not make any changes without my knowledge. See High-Level-Design.pdf.

Useful resources:
1. Refer to "./src/W10 - 2-AuthorsJSP" to see what our school's standard is for a JSP program as an example
2. The apache tomcat folder in src/dependencies contains a sql-connector...jar to connect to MySQL.

This project MUST:

1. Follow all the instructions on INSTRUCTIONS.pdf
2. Follow my solution design to keep things simple.
3. Be written on a NEW branch. My .git folder is include, can you commit to my existing repo?
4. Use 3-layer architecture : presentation, business, and data layer; along with MVC design pattern.
5. Connect to an RDBMS. My database of choice is MySQL. I have already defined the tables for the database. Please use those!
6. Include commit history (.git folder)
7. Use design patterns (singleton for database connection for example)
8. Include JUnit tests
9. Be importable with Netbeans. I cannot afford the tiem to solve import issues.
10. Be functional.

My expectations for the HTML webpages:

As basic as possible. No styling or anything. Just a few links to link the login page to the content page for example. Refer to use case diagram in High-Level design, maybe that would help.

If time permits, please include a password hashing functionality, I will use that as the bonus functionality as per the instructions.

Do not hesitate to reach me for questions.