我是Rest服务世界的新手,我有简单的名称为
的SOAP服务withDrawCashFromAccount(int id, int amountToWithDraw)
depositCashToAccount(int id, int amountToDeposit)
这是一个自我解释,这是一个简单的服务,因为管理团队决定转向宁静的架构,我面临如何在restful API中转换两个方法的以下问题
资源名称“帐户”
e.g Json structure:
id : 1,
name : "awesome customer",
Amount : 500
为了拥有用户可以使用的上述两种简单用例 提取现金或用户可以存款,我很困惑我怎么设计 休息服务的终点。我可以命名吗
/帐户/ depositCash / ID, /帐户/ withdrawCash / ID
目前使用来自此example
的春季启动答案 0 :(得分:0)
您不一定需要发送整个Account
对象,只要它们来自相同的基本URL,您就应该能够为任何您喜欢的端点命名。这一切都取决于您如何配置服务和POJOS。
例如,使用JAX-RS,您可以使用@Path("path/you/want/here")
注释服务类,以指定该服务中可访问的所有方法的基本路径,然后为每个方法指定更具体的@Path
注释为它们提供唯一路径的方法(方法级别@Path
注释被添加到类级别1的末尾)。您可以使用@GET
或@POST
等HTTP动词注释来注释公共方法,以指定该方法将采用的动词。
在REST端点方法中,您可以使用Jackson将传入的JSON反序列化为POJO,直到指定需要哪些属性,如何反序列化/序列化等等。只要您不需要属性或者您希望它们不会始终存在,您就可以简单地允许缺少POJO字段以反序列化为null。