这里以eplatWebUI项目为例说明,配置文件spring/applicationContext-mongo.xml,java工具包如下:

mongodb单表最大数据量 mongodb单表20亿_mysql

这里怎么去实现,不说废话,直接看代码,感兴趣的可以自己看下怎么实现的,这里先看一下bean代码如下:

这里建议尽量使用单表结果,虽说MongoDB是最像关系型数据库的非关系型数据库,MongoDB也建议使用单表结构,目前关联查询这个我还没用到,再设计数据库的时候,尽量多缓存一些你要使用的数据,不要在进行一次mysql的查询,这个因业务而异,比如对用户的昵称和头像要求实时更新的话,建议不存入MongoDB,因为你修改这些数据的时候,要更改MongoDB的数据,这种必须mysql于MongoDB数据保持一致,比如可以用定时器处理,实现最终一致性。

mongodb单表最大数据量 mongodb单表20亿_数据_02

mongodb单表最大数据量 mongodb单表20亿_关系型数据库_03

@Transient  这个注解的意思是在进行插入操作的时候,该字段不参与加入表中,一般非表中的成员变量加此注解。

mongodb单表最大数据量 mongodb单表20亿_mysql_04

插入方法就是这么简单所有实现都是MongoBase去帮你完成的,我们看一个分页的实现如下代码:

mongodb单表最大数据量 mongodb单表20亿_关系型数据库_05

根据id删除一条记录,只需要说明是哪个class文件就行,都是通过反射实现的,MongoDB主键都是_id  并且是String类型的

mongodb单表最大数据量 mongodb单表20亿_关系型数据库_06

这里看一个修改操作,条件删除跟修改很像不说明了:

mongodb单表最大数据量 mongodb单表20亿_关系型数据库_07

根据id修改的一段代码:

mongodb单表最大数据量 mongodb单表20亿_mysql_08

条件删除和修改一样的,定义query查询条件,然后调用api接口就可以了:

mongodb单表最大数据量 mongodb单表20亿_数据_09