怎么在springboot中利用openfeign读取JSON文件中的数据?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
JSON帮助类,主要使用了objectMapper这个对象
/** * 将json转换为对象. * * @param path 文件路径 */ public <T> T fromJson(String path, Class<T> cls) { try { return objectMapper.readValue(this.fromResource(path, Charsets.UTF_8), cls); } catch (Exception e) { throw new IllegalStateException("读取json失败:" + path, e); } } /** * 将json数组转换为对象列表. * * @param path 文件路径 */ public <T> List<T> listFromJson(String path, TypeReference typeReference) { try { return objectMapper.readValue(fromResource(path, Charsets.UTF_8), typeReference); } catch (Exception e) { throw new IllegalStateException("读取json失败:" + path, e); } }
在Mock类型中,可以使用这个方法读JSON文件的内容
@Configuration @Profile("integTest") public class ServiceClientMock { @Bean public ServiceClient registerServiceClient() { AccountClient client = mock(AccountClient.class); when(client.del( anyString(), anyString(), anyString(), anyMap())).thenReturn(fromJson("order/orders.json", Map.class)); } }
上面代码主要在模拟了ServiceClient对象里的del方法,有三个字符型输入参数,返回值从JSON文件读取,在单元测试里,直接注入的是ServiceClientMock对象,我们
可以从@Profile注解里看到,它运行在integTest环境中,在生产环境里,将使用真正的服务。
关于怎么在springboot中利用openfeign读取JSON文件中的数据问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。