是否将bean的空属性插入MongoDB?

时间:2014-10-28 09:33:06

标签: java spring mongodb spring-data

我完全是Mongo的新手。如果我错了,请纠正我。我想将数据插入MongoDB,我正在使用SpringData。所以,我有一个豆子如下..

@Document(collection = "myBean")
public class myBean {
@Id private String id;
// ... another properties
}

我注意到当我插入bean而没有初始化一些属性时。我在MongoDB的集合中没有看到这些字段。我认为这不应该是因为当我插入MySQL DB时,某些字段可以定义默认值。罚款,但如果我使用MongoDB,我是否需要定义要插入到集合中的bean的每个属性?

如果我在bean中有数百个属性,我该怎么办?我需要定义一些值还是使用默认构造函数来初始化它们?

请有人给我一些建议。谢谢!

1 个答案:

答案 0 :(得分:1)

MongoDB对于与MySQL不同的字段没有默认值 - 您可以发现即使在同一个集合中,两个文档也可能具有非常不同的结构。

通常,spring-data-mongodb不会保存对象类型且具有空值的字段。这取决于某些转换器的行为。因此,如果要将默认值保存到MongoDB中,则应在构造函数或某处初始化这些字段。