Spring中Mongodb的java实体类映射
来源:互联网 发布:浙江华为 知乎 编辑:程序博客网 时间:2024/05/19 13:26
spring-data-mongodb中的实体映射是通过MongoMappingConverter这个类实现的。它可以通过注释把java类转换为mongodb的文档。
它有以下几种注释:
@Id - 文档的唯一标识,在mongodb中为ObjectId,它是唯一的,通过时间戳+机器标识+进程ID+自增计数器(确保同一秒内产生的Id不会冲突)构成。
@Document - 把一个java类声明为mongodb的文档,可以通过collection参数指定这个类对应的文档。
@DBRef - 声明类似于关系数据库的关联关系。ps:暂不支持级联的保存功能,当你在本实例中修改了DERef对象里面的值时,单独保存本实例并不能保存DERef引用的对象,它要另外保存,如下面例子的Person和Account。
@Indexed - 声明该字段需要索引,建索引可以大大的提高查询效率。
@CompoundIndex - 复合索引的声明,建复合索引可以有效地提高多字段的查询效率。
@GeoSpatialIndexed - 声明该字段为地理信息的索引。
@Transient - 映射忽略的字段,该字段不会保存到mongodb。
@PersistenceConstructor - 声明构造函数,作用是把从数据库取出的数据实例化为对象。该构造函数传入的值为从DBObject中取出的数据。
以下引用一个官方文档的例子:
Person类
Account类
spring data 4 mongoDB自动创建复合索引
spring data 4 mongodb 在domain上添加annation,自动创建复合索引时需要使用CompoundIndexes。
例如:
@CompoundIndex(name = "shop_index", def = "{platform : 1, shopId : 1}")
程序也不会有编译错误或者执行错误,但是spring data不会建立任何索引,
下面这样写才会启动时自动建立复合索引。
@CompoundIndexes({
@CompoundIndex(name = "shop_index", def = "{platform : 1, shopId : 1}")
})
阅读全文
0 0
- Spring中Mongodb的java实体类映射
- Spring中Mongodb的java实体类映射
- Spring中Mongodb的java实体类映射
- Mongodb与spring集成 实体映射
- Mongodb与spring集成 实体映射
- mongodb实体映射
- Mongodb与spring集成(2)------实体映射
- Mongodb与spring集成(2)------实体映射
- Spring中映射Mongodb中注解的解释
- spring dao到实体的映射
- spring中实体类值的设定
- mybatis中映射文件和实体类的关联性
- java使用MongoDB更新实体类某一字段的值
- spring data jpa 实体类中字段不与数据库表映射 ORA-00904 标识符无效
- spring data jpa 实体类中字段不与数据库表映射
- java 根据实体类创建映射文件
- java读取document映射实体类
- MongoDB对应Java实体类编写方法
- 2017/6/15 linux makefile kconfig
- 89C52单片机之数码管中断
- 数据结构-双循环链表
- 浅谈C++指针类型的转换
- RNN中文处理及最大熵
- Spring中Mongodb的java实体类映射
- 聚合函数和Group by
- 纯 CSS 实现三角形尖角箭头的实例
- 安装使用supervisor
- Nginx fastcgi_param 详解
- tail recursion
- 简单的文字搜索功能
- 递归算法计算阶乘(五)
- Android关于列表卡顿的问题(或者说两个列表数据关联的问题)