SpringBoot集成Eureka导致返回结果由json变为xml
解决方案
在请求的Mapping上加上
1
|
produces = { “application/json;charset=UTF- 8 ” } |
例如:
1
|
@GetMapping (value = "/user-instance" , produces = { "application/json;charset=UTF-8" }) |
以下是json和xml
1
2
|
@GetMapping (value = "/user-instance" , produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @GetMapping (value = "/user-instance" , produces = MediaType.APPLICATION_XML_VALUE) |
支持JSON和XML两种格式的返回
有时项目需求两种返回格式,这时候我们只要加上jackson xml的依赖就可以了
1
2
3
4
|
< dependency > < groupId >com.fasterxml.jackson.jaxrs</ groupId > < artifactId >jackson-jaxrs-xml-provider</ artifactId > </ dependency > |
eureka 启动失败 返回xml信息
一、为什么要用到这个
今天照常启动eclipse后,启动eureka项目,访问对应eureka却返回一大堆 xml 信息,看控制台却并没有报错,很奇怪的情况,度娘甚至找不到相关信息,google上有一个问题类似的,下面 有个提示说 在配置文件里加一行配置,我试了依然失败
二、解决方案
尝试各种方法无果后,决定从maven下手。
第一次,找到自己maven配置下的仓储路径,(windows-preference-maven-user settings local repository)
进入 org/ springframework ,删除 cloud 文件夹(需要关闭 eclipse),然后打开eclipse ,update 一下项目,完成后再次启动eureka,问题依然没有解决,所有不是 cloud 这个包的问题。
第二次, 非常狠心地,直接删除整个 springframework 文件夹,再重新下载。 成功。eureka 访问恢复正常。
综上,问题应该出在 springframework 下某个包(已排除cloud),具体尚不清除。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://zhangxueliang.blog.csdn.net/article/details/103189909