gpt4 book ai didi

java - Snakeaml 加载到 JavaBean,如果在 map 中找不到属性

转载 作者:行者123 更新时间:2023-11-29 09:30:51 25 4
gpt4 key购买 nike

我想知道是否有可能让 snakeyaml 将 yaml 文档加载到 javabean 中,如果它无法在文档中找到条目的匹配项作为 javabean 属性,它将把它放入一个通用映射中javabean...

例如

public class Person {
private String firstName;
private String lastName;
private Map<String, Object> anythingElse;

//Getters and setters...
}

如果我加载一个如下所示的文档:

firstName: joe
lastName: smith
age: 30

由于 age 不是 bean 中的属性,我希望将 {age, 30} 添加到 anythingElse 映射中。

可能吗?

谢谢。

最佳答案

不,这是不可能的。

根据我的经验和尝试,它不起作用。如果您想将文件加载到对象中,则该对象类中的所有 属性都必须具有 getter 和 setter(即该类必须是 JavaBean,请参阅维基百科)。

我使用了您的 Person 类(有关正确的 JavaBeanClass,请参见 wiki 页面)和此代码:http://codepaste.net/dbtzqb

我的错误消息是:“第 3 行,第 4 列:无法在类:Person 上找到属性‘age’”,从而证明这个简单的程序不能具有“意外”属性。这是我快速而简单的结论。我没有广泛尝试过,所以它可能是可能的,但我不知道这样的方法(你必须绕过阅读方法和 JavaBean)。我使用了 YamlBeans ( https://code.google.com/p/yamlbeans/ ),所以它有点不同,但我发现它更容易工作;]

希望对您有所帮助!

编辑

很抱歉碰到这个,迟到总比不到好!直到我发布答案后我才看到发布日期。但希望它能帮助其他寻求帮助的人 assweel :3

关于java - Snakeaml 加载到 JavaBean,如果在 map 中找不到属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11691659/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com