在服务对象时,我们使用toResource方法将其转换为资源,然后在返回的过程中(将资源表示形式从客户端发布到服务器)如​​何将表示形式转换回域对象?

我想从BookResource(扩展ResourceSupport)类构造Book(@Entity)类。

@RequestMapping(path="/", method = RequestMethod.POST, produces="application/vnd.company.app.book-v1+hal+json")
    public ResponseEntity<?> addBook(@RequestBody BookResource bookResource) {
        //What to do here?
    }

最佳答案

您的BookResource应该扩展Resource而不是ResourceSupport。

public class BookResource extends Resource<Book> {

    public BookResource(Book content, Link... links) {
        super(content, links);
    }

}

这样,您可以免费获得getContent()方法,该方法“返回基础实体”。

09-25 16:35