`
yu120
  • 浏览: 81817 次
社区版块
存档分类
最新评论

⑥BuguMongo------数据库索引

阅读更多

数据库索引

注意: 这里指的是数据库本身的索引,不要把它与Lucene的索引相混淆。

如果不需要打开shell执行create index,直接在程序源代码里就能指定数据库索引,是不是很酷?

是的,利用BuguMongo,你只需在程序里加上个@EnsureIndex注解,即可实现该功能。

以一个简单的新闻系统为例:

@Entity@EnsureIndex("{type:1}")publicclassNewsimplementsBuguEntity{
    @Id
    privateString id;
    privateString title;   //标题
    privateString content;  //内容
    privateString author;  //作者
    privateString type;  //类别
    privateint level;  //推荐级别
    privateDate publishTime;  //发布时间

    ...getter and setter...}

索引的书写规则,可以采用标准的JSON格式:

@EnsureIndex("{'type':1}")

或者简化的JSON格式:

@EnsureIndex("{type:1}")

如果有多个索引,那么这样写:

@EnsureIndex("{type:1},{level:-1}")

如果是组合索引,格式如下:

@EnsureIndex("{author:1, type:1}, {level:-1}")  //2个索引,第1个为组合索引

如果是地理空间索引,也是类似的:

@EnsureIndex("{gps:2d}")

还可以设置索引的属性,比如name、unique等:

@EnsureIndex("{author:1, level:-1, name:idx_author_level}")

支持TTL Collection:

@EnsureIndex("{publishTime:1, expireAfterSeconds:3600}")
分享到:
评论

相关推荐

    MySQL-数据库-索引详解

    MySQL 数据库索引详解 MySQL 数据库索引是一种特殊的数据库结构,可以快速查询数据库表中特定记录。索引是提高数据库性能的重要方式。 索引的概念 ---------------- 索引是表中数据的目录。如果使用索引,则扫描...

    mysql-数据库-索引详解.doc

    mysql-数据库-索引详解.doc

    数据库-实验4-数据库操作的实现算法-B树-索引查找.pdf

    数据库-实验4-数据库操作的实现算法-B树-索引查找.pdf

    OceanBase-V4.2.1数据库文档

    2. **参考指南**:《OceanBase-数据库--V4.2.1-参考指南.pdf》提供了详细的API参考和SQL语法,是开发者日常操作和编写代码的重要参考资料,涵盖了数据操作、事务处理、索引管理等多个方面。 3. **数据库管理**:...

    Oracle数据库--索引讲义.pptx

    Oracle数据库--索引讲义.pptx

    数据库基础-索引.pptx

    "数据库基础-索引" 数据库基础中索引的概念是非常重要的,它可以提高数据库的查询速度和效率。在本文中,我们将详细介绍数据库基础中的索引,包括索引的概念、分类、特点、优点、应用场景等。 索引的概念 --------...

    mysql面试题-mysql经典面试题目-数据库的基本概念-SQL语法-事务处理-索引优化-性能调优-mysql-面试题目

    【MySQL面试题】在面试MySQL相关的职位时,面试官可能会问到一系列关于数据库基础、SQL语法、事务处理、索引优化以及性能调优的问题。以下是一些可能的面试重点: 1. **数据库基本概念**: - 数据库是用于存储和...

    数据库-----讲义

    - 查询优化:通过优化查询语句、合理设计数据库结构和使用索引来减少查询时间。 - 分区和分片:大型数据库中,通过将数据分散到多个物理存储设备来提升查询效率。 8. 数据库集群与分布式数据库: - 数据库集群:...

    数据库 创建索引 sql oracle

    "数据库创建索引SQL Oracle" 数据库索引是数据库性能优化的重要手段之一。创建索引可以提高查询速度,降低数据库的负载,提高数据的安全性。本文将详细介绍数据库创建索引的原则、分类、创建方法、管理和优化等方面...

    SQL语句解释大全-从数据库表中检索数据行和列

    CREATE INDEX --为数据库表创建一个索引 DROP INDEX --从数据库中删除索引 CREATE PROCEDURE --创建一个存储过程 DROP PROCEDURE --从数据库中删除存储过程 CREATE TRIGGER --创建一个触发器 DROP TRIGGER --从...

    数据库---索引

    这是我们老师自己总结的一些东西了希望对大家有用了,嘻嘻

    MySQL数据库索引-总结

    【免费获取】MySQL数据库索引---总结的【文档+PPT】(可用于每日一讲)。

    MySQL-数据库索引(MD格式)

    MySQL-数据库索引(MD格式)

    PU-基础设置-数据库表索引设计1

    在本场景中,我们关注的是“PU-基础设置-数据库表索引设计1”,涉及了多个表及其索引设计,主要针对采购岗和计划岗的相关功能。下面将详细讨论这些表的索引设计和其在实际业务中的应用。 1. **采购岗、计划岗 po_...

    分布式数据库-信创数据库-国产数据库与传统mysql的兼容性测试案例

    - 索引管理:包括创建、删除、重命名和重建索引,以及主键和唯一索引的处理。 - 分区管理:测试添加和删除分区的操作。 - 字段注释:验证在线修改字段注释的兼容性。 - 清除数据:如TRUNCATE TABLE和DROP语句的执行...

    数据库4-2 数据库索引技术1

    【数据库索引技术详解】 数据库索引是一种为了加速数据检索而创建的数据结构,它使得数据库管理系统(DBMS)能够在大量数据中快速找到所需记录。索引由一系列索引项组成,每个索引项包含索引字段(通常是表中一列或...

    PU-库存单据的结算财务副本-数据库表索引设计1

    本文将详细探讨关于“PU-库存单据的结算财务副本”的数据库表索引设计,涉及采购入、委外入和消耗汇总财务三个部分的主表及其明细表。 1. **采购入财务** - **主表 po_purchaseinfi** - **索引设计** - 主键索引...

    0113-(每特教育&每特学院&蚂蚁课堂)-4期-数据库技术-高性能MySQL索引实现原理之实战操作索引.zip

    本课程“0113-(每特教育&每特学院&蚂蚁课堂)-4期-数据库技术-高性能MySQL索引实现原理之实战操作索引”聚焦于MySQL的索引实现原理和实战应用,旨在提升数据库查询效率,从而提高整体系统性能。 首先,我们要理解...

Global site tag (gtag.js) - Google Analytics