A REST Server that supports CRUD services & A Client that implements a CRUD lifecycle
In this project client and server communicate using HTTP verbs (POST, GET, PUT, DELETE) and JSON format for request/response body. Client interface allows professor to create, read, update, delete gradebook entries for given student. You can find the code here.
Gradebook structure is explained in following diagram->
Here is self explanatory image of client interface ->
URI for Student resource->
Some important points to know about project before you execute it->
- Client-main program is in edu.asu.cse564.samples.crud.restcl.ui.Gradebook_REST_UI.java
- All client-server communication is done in JSON format.
- Before you start creating graded items you need to create gradebook.
- Server can maintain multiple gradebooks at a time. There could be multiple graded items inside gradebook. Graded Item contains multiple students’ info.
- Item consists of category and Item id.
- Before you start creating student you need to create graded item.
- Student update action will update his score and feedback.
- To access Student resource you need gradebook, category, Item id and Student id.
- To access graded item resource you need gradebook, category, and Item id.
- All gradebook data is saved in JSON file on server side. So, if you stop and start server it will be there.
- You can see log statements while client and server are communicating to get idea what is happening behind the scene