“在实体类上未找到此属性以将构造函数参数绑定到”发现错误的类,但已正确保存在数据库中

时间:2019-05-02 15:06:42

标签: java mongodb spring-boot

我对MongoDB与Java的结合使用显然很陌生,并且遇到了一些困难。

所以首先,我要上我的父母班:

@Document(collection = "monster")
@FieldDefaults(level= AccessLevel.PRIVATE)
@AllArgsConstructor(access = AccessLevel.PUBLIC)
@NoArgsConstructor(access = AccessLevel.PUBLIC)
@Getter
@Setter
@ToString
public class MonsterDocument {

    @Id
    String name;
    Family family;
    Attribute attribute;
    Role role;
    List<MonsterStaticStat> staticStats;
    List<MonsterEvolvingStat> evolvingStats;
    List<Skill> skills;
    // TODO
    LeaderSkill leaderSkill;

然后,我创建了一个嘲笑的孩子:

public class RaoqMock extends MonsterDocument {

正如我告诉他的,基本上哪个构造函数没有上面的args设置值。

然后,我尝试将其保存在MongoDB中。但是我希望_class属性是MonsterDocument。好吧,这很容易,我刚刚使用MonsterDocument arg创建了一个构造函数。因此,我的文档在mongodb中保存为类:application.document.MonsterDocument

但是,当我尝试通过存储库上的一个简单请求findAll()来获取它时,它给了我这个错误:“在实体类application.entity.mockMonster.RaoqMock $ 1上找不到将属性$ 0绑定到构造函数参数的属性!”。

我真的不知道为什么,这是什么问题。

0 个答案:

没有答案