A robust cinema booking system from conceptualization to deployment, focusing on scalability and functionality. The system allows users to seamlessly reserve movie tickets and select seats.
- User-Friendly Interface: Designed with React for easy movie ticket reservations and seat selection.
- Secure Backend: Efficient server-side APIs using Spring Boot for secure operations.
- Database Management: Complex SQL queries to manage movie, theater, and booking information in a MySQL database.
- Integration: Seamless integration between frontend and backend components.
- Testing and Debugging: Conducted thorough testing and debugging to ensure application reliability and stability.
- Security: JWT Authentication and Spring Security to enhance the security of user data and transactions.
- Frontend: React
- Backend: Spring Boot
- Database: MySQL
- Authentication: JWT (JSON Web Tokens), Spring Security
- Node.js
- Java JDK
- Spring Boot
- MySQL
- Navigate to the
frontenddirectory. - Install dependencies:
npm install- Start the development server:
npm start- Navigate to the
backenddirectory. - Configure the database settings in application.properties.
- Build the project:
mvn clean install- Run the Spring Boot application:
mvn spring-boot:runPOST /api/auth/register: Register a new user.POST /api/auth/login: Login and retrieve a JWT token.
GET /api/movies: Retrieve all movies.GET /api/movies/{MovieId}: Retrieve a single movie by ID.POST /api/movies: Add a new movie.PUT /api/movies/{MovieId}: Update an existing movie.DELETE /api/movies/{MovieId}: Delete a movie.
GET /api/theaters: Retrieve all theaters.GET /api/theaters/{theatreId}: Retrieve a single theater by ID.POST /api/theaters: Add a new theater.PUT /api/theaters/{theatreId}: Update an existing theater.DELETE /api/theaters/{theatreId}: Delete a theater.
GET /api/bookings: Retrieve all bookings.GET /api/bookings/{ticketId}: Retrieve a single booking by ID.POST /api/bookings: Create a new booking.PUT /api/bookings/{ticketId}: Update an existing booking.DELETE /api/bookings/{ticketId}: Delete a booking.
- Contributions are welcome! Please fork the repository and create a pull request with your changes.
