GsonForRestful is a Java library that can be used to design a Json Restful Web Services and/or Client. For serialization and deserialization purpose the GSON library is used because can work with arbitrary Java objects including pre-existing objects that you do not have source-code of. This last is very useful at deserialization mode because the class design for this purpose can satisfy the Single Responsability Principle easily, also GSON support the use of Java Generics and register serializer and deserializer for any class without the use of annotations.
The GsonForRestful Goals are: - Design a group of common class which can be used on Service and Client. See GsonRestfulCommon library. - Ease CRUD operations through DAO Pattern and JPA. See GsonForRestfulWebService library. - Create anonymous implementation for DAO Pattern through Factory Method Pattern given an entity class. See GsonForRestfulWebService library. - Support for HATEOAS Hypermedia as the Engine of Application State. See GsonForRestfulWebService library. - Support filtering and ordering using FiltersJsonDataBuilder and OrderByJsonDataBuilder class at GsonRestfulCommon, sending the builded Json like query parameters of Client GET request which will be converted to JPQL according to the case. See GsonForRestfulWebService library. - Support pagination like google. There are 10 page at any time unless there are less than 10 total pages. See GsonForRestfulWebService library. - Standardizes the data format sended/received between Service and Client through Json using JSON-Pure. See GsonForRestfulWebService library. - Ease sending Client request and deserialize Restful Service response with JSON-Pure format. See GsonForRestfulClient library.
Thanks in advance for your comments.