In this Application Admin can register a customer , planter ,Plant and seeds and Admin can delete all of these. A customer can register himself/herself and login and after login customer can see all present Planter, Plant and seeds and if customer want to purchase anything then customer can place a order as well.
The objective to create this project was to implement all things which we have learned , how to contribute in a collaborative project as a team player and face some challenges which can be occur in real time project.We made a Backend Application to perform CRUD operation and made RestFul APIs Service Using java, SpringBoot, lombok and swagger-UI for Nursery Plant Application.
- Java
- Spring Boot
- Maven
- Swagger-Ui
- Lombok
- MySQL
- SpringData Jpa
- Hibernate
- Admin/Customer registration and Login.
- Admin can Perform The All Crud operation on Plants,Planters,Seeds and customers or Manage them.
- Customer can See or Buy Seeds, Plants and Planters.
- Customer can place a order.
- For Data Security We Build SignUp - Login For customer and Admin.
- Stored the data In MySQL and that Can be access By only Authenticated User.
- Proper Exception Handling.
- Proper Input Validation.
You can clone this repo and start the serve on localhost. Before running the API server, we should update the database config inside the application.properties file. Update the port number, username and password as per your local database config.
server.port=8888
spring.datasource.url=jdbc:mysql://localhost:3306/sb201db
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=**mysql username**
spring.datasource.password=**YourPassword**
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.mvc.pathmatch.matching-strategy = ANT_PATH_MATCHER
Link: http://localhost:8888/swagger-ui/
POST /Admin/login
Logging in as a Admin with valid Email and Pass.GET /Admin/logout/{key}
Logout as a Admin with valid Key or Session token.
POST /Admin/customers/{key}
To Add a Customer with valid Session tokenGET /Admin/customers/{key}
To View All Customers with valid Session tokenGET /Admin/customers/{customerId}/{key}/
To view Customer With customerId with valid sesion tokenGET /Admin/customers/{customerEmail}/{customerPassword}/{key}
To validate Customer with Proper Email and pass of customerPUT /Admin/customers/{key}
To Update Customer With Proper session tokenDELETE /Admin/customers/{email}/{key}
To delete customer With proper Session Token
Link:
All Work of Admin and Customer Management and LogIn Auth done by Shimbhu Kumawat
All Work of Plant management Done By Nitin Kumar
All Work of Planter and Er Dia Done By Shreyash Ahuja
All Work of Seed management Done by Akash Kumar
All work of order Management Done By Chetan Patil
We all became proficient in reading the code of team members.
We got the better Idea and perspective of Different Layers Like: Presentation Layer, Service Layer and Data Access layer.
We get good idea about Team management and team Collaboration.
our skills in Java And Spring boot became more better.
Our code writing style became cleaner as we had to think while writing code that other team members will be reading.