首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YAML被解析为linkedHashMap而不是JAVABean

YAML被解析为linkedHashMap而不是JAVABean
EN

Stack Overflow用户
提问于 2018-09-20 09:24:02
回答 1查看 767关注 0票数 0

我有一个YAML,它应该被解析为JAVA对象,而不是抛出一个java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to <mytype>。“青年反洗钱法”如下:

代码语言:javascript
复制
--- 
- 
  count: 1
  indicies: 
    - be-log-2018.09.20
  searchText: someText
  services: 
    - um
    - sa
- 
  count: 2
  searchText: someMoreText
  services: 
    - um2
    - sa2
- 
  count: 2
  searchText: someMoreText

我的POJO课程是:

代码语言:javascript
复制
public class MyType {

    private int count;
    private String searchText;
    private String[] services;
    private String[] indicies;

阅读“青年反洗钱”时:

代码语言:javascript
复制
ObjectMapper mapper= new ObjectMapper(new YAMLFactory());
mapper.readValue(new File(path), List.class);

理想情况下,如果没有提供数据,我希望有一个空数组。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-20 09:42:47

使用这个

代码语言:javascript
复制
List<MyType> myTypeList = objectMapper.readValue(new File(path), new TypeReference<List<MyType>>() {});

阅读更多关于TypeReference的信息

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52421711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档