我将XML输入到REST控制器中,并使用@RequestBody批注将其转换为Java对象。除了Java Object中的一些特定元素之外,我还需要将整个XML保存到数据库列。我明确地编组Java对象来实现这一点,这似乎是重复的工作。在使用@RequestBody注释时,有没有办法在解析对象之外获取原始XML?
答案 0 :(得分:0)
是的,有。假设这是你的控制器方法:
public Response yourControllerMethod(@RequestBody YourDTO dto) {
只需将您的@RequestBody参数类型更改为String,您就会获得请求的原始主体:
public Response yourControllerMethod(@RequestBody String rawPayload) {
或者你甚至可以同时获得两者:
public Response yourControllerMethod(@RequestBody YourDTO dto, @RequestBody String rawPayload) {