The Online Voting System, built with Java using Spring MVC, is a web-based software that allows administrators to manage elections and enables voters to participate in polls.
OnlineVoting.mp4
To run this project on your system you need:
- IDE (Eclipse or NetBeans or IntelliJ IDEA Ultimate)
- Java 20
- Tomcat 10
- MYSQL
- Clone the project.
- Install all dependencies using Maven.
- Create a database in MYSQL using this statement "CREATE DATABASE onlinevotingsystem".
- Configure dataSource Bean in file dispacher-servlet.xml according to your database (username and password)
- Configure Tomcat server with Eclipse and start the server.
- After successfully deploying on your local Tomcat server visit this link in your browser http://localhost:8080/Online-Voting-System/
- Use admin as both username and password to login as admin.
Note: You don't need to create tables as Hibernate will create and manage all tables in database.
- Register New Voters: Admins can register new voters with the system.
- Create New Polls (Elections): Admins can create new polls for various elections.
- Manage Multiple Polls: Admins can manage multiple polls simultaneously.
- Add Candidates for Each Poll: Admins can specify and manage candidates for each poll.
- Delete Polls or Announce Results: Admins can delete polls or announce the results once voting is complete.
- Login: Voters can log in using the username and password provided by the admin.
- Select Election and Vote: Voters can choose an election and select a candidate from the list.
- Voting Restriction: Voters can only vote if the results have not been announced.
- View Election Results: Voters can view the winner once the results are announced.
- Improve the UI of the project.
- Add a logout button.
- Add a home button.
- Handle exceptions such as poll draw situations.
- Containerize the application using Docker.