在springboot中,如果使用@RequestBody,@ResponseBody标签,springboot会将http报文首部content-type为application/json的报文主体与实体类,map,List之间做相互转换。
做以下配置,可以实现xml格式与实体类,map,list之间相互转换。
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
</dependency>
配置该依赖后,@RequestBody可以将请求报文为application/xml格式的主体可以直接转换为实体类
但是对于@ResponseBody返回的实体类,默认返回格式还是application/json。
有两种方式可以将返回格式改为application/xml
1.Http请求报文首部加上accept:application/xml
该方法依赖客户端的请求格式,后台无法控制
2.@RequestMapping标签加上属性produces = MediaType.APPLICATION_XML_VALUE