This project is a full-stack application for managing food items. The backend is built using Spring Boot and interacts with a MySQL database. The frontend is developed using React.js and Bootstrap for a user-friendly interface. Postman is used for API testing.
• Food Item Management: ° Add new food items with ID, name, and price. ° Update existing food item's name and price. ° Delete specific food items. ° View all food items in a table format. ° Search for food items by ID. • User Authentication: ° User registration with username, password, and name. ° User login with username and password. ° Data validation for registration and login forms.
• Backend: Spring Boot, Java, MySQL • Frontend: React.js, Bootstrap • API Testing: Postman • Database: MySQL
food-app/ ├── backend/ │ ├── src/main/java/com/example/foodapp/ │ │ ├── controller/ │ │ ├── entity/ │ │ ├── repository/ │ │ ├── service/ │ │ └── FoodAppApplication.java │ └── pom.xml ├── frontend/ │ ├── public/ │ ├── src/ │ │ ├── App.js │ │ ├── components/ │ │ ├── services/ │ │ └── index.js │ └── package.json ├── db.sql // SQL script for creating database tables └── readme.md
• Backend ° Clone the repository. ° Set up MySQL database with necessary tables (refer to db.sql). ° Configure database connection details in application.properties file. ° Build and run the Spring Boot application using Maven or your IDE. • Frontend ° Navigate to the frontend directory. ° Install dependencies using npm install. ° Start the development server using npm start.
• Food Item Endpoints: ° /api/food/add: POST request to add a food item. ° /api/food/update: PUT request to update a food item. ° /api/food/delete/{id}: DELETE request to delete a food item. ° /api/food/all: GET request to get all food items. ° /api/food/search/{id}: GET request to search for a food item by ID. • User Endpoints: ° /api/user/register: POST request to register a new user. ° /api/user/login: POST request to login a user.
The database should have two tables:
• food_items (fid, fname, price) • register (uid, uname, pass, nm)
• Implement proper error handling and validation. • Consider using security measures for API endpoints. • Optimize database queries for performance. • Add more features like user roles, food categories, etc.
Feel free to contribute to the project by submitting pull requests or raising issues.
Note: This is a basic outline and will require further implementation details.
Remember to replace placeholders like com.example.foodapp with your actual package name and adjust the project structure according to your preferences.
For more detailed instructions and code examples, refer to Spring Boot, React.js, Bootstrap, and MySQL documentation.
Would you like to delve deeper into any specific part of the project?