为了账号安全,请及时绑定邮箱和手机立即绑定

YAML 解析为 linkedHashMap 而不是 JAVABean

YAML 解析为 linkedHashMap 而不是 JAVABean

阿晨1998 2021-09-29 16:25:41
我有一个 YAML 应该被解析为 JAVA POJO 对象,而不是它抛出一个java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to <mytype>. YAML 如下:--- -   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 课程是:public class MyType {    private int count;    private String searchText;    private String[] services;    private String[] indicies;并使用以下命令读取 YAML:ObjectMapper mapper= new ObjectMapper(new YAMLFactory());mapper.readValue(new File(path), List.class);理想情况下,如果没有给出数据,我想要一个空数组。
查看完整描述

1 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

用这个

List<MyType> myTypeList = objectMapper.readValue(new File(path), new TypeReference<List<MyType>>() {});

阅读有关TypeReference 的更多信息


查看完整回答
反对 回复 2021-09-29
  • 1 回答
  • 0 关注
  • 438 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信