1.Built a complete dating web application with a multi-roles login system
2.Created a database to collect the user information from the web application
3.Established a user login system offering different functions for multiple user roles
4.Created an interface allowing administrators to manage the database
- User: can use comment function
- Prime user: can use appointment and google map function
- Admin: can confirm appointment and manage use
1.This project was design for three kinds of users: user, prime, and admin
I have a controller-service-Dao chain to handle the role for each user
2.Two main functions to access to database:
- Allow user to create and check comment
- Allow user to create edit, and check appointment
3.Two controller-service-Dao chains to handle the function
- Webcontent/Resource to hold all of the third part resource like JS file and CSS
- Each function was separate from other function. So error in one function can not impact other. Beside, this design is re-useable. I can put one function into another project without too much change
1.Spring MVC
2.Hibernate
3.Spring security
4.Maven
5.JQuery
1.Home page
2.Login page - New account page
3.Comment page - Check comment page
4.appointment page (prime and admin only) - New appointment page / edit appointment page - Check appointment page
5.Google map page (prime and admin only)
6.Confirm appointment page(admin only) - Appointment list
7.Admin page(admin only) - User list - Management page
- Domain package:
hold three entities: User, Comment, and Appointment - Controller layer:
Three controller:Usercontroller, Commentcontroller, and Appointmentcontroller
And one error handler - Service layer
Three service: UserService , CommentService , and AppointmentService - Dao layer
Three Dao: UserDao , CommentDao , and AppointmentDao - Config package
Dao, security, and service - Resource:
JS file, Css file - JSP : 20 jsp pages
- Servlet to fix the URL and web.xml
- Maven dependency
1 Users: username(PK), name, gender, email, password, authority, enable
2 Comment: id(PK), subject, comment, username(FK from users)
3 Appointment: id(PK), time, detail, confirm, username(FK from users)
The main functions include:
- Allow user to sign in and log in their personal account
- Allow user to create and check comment
- Allow user to create edit, and check appointment
- Google map
- Allow admin to check, confirm or deny appointment
- Allow admin to check user list and change authority and enable of user
This repo is under MIT License: https://opensource.org/licenses/MIT