当前位置: 首页 > news >正文

用dw做的十二星座网站免费沈阳网站如何制作

用dw做的十二星座网站免费,沈阳网站如何制作,上海外企公司有哪些,诸城做网站的公司mongodb上限集合在MongoDB中#xff0c;可以以循环方式将文档的插入顺序保留到集合中。 这些类型的集合在MongoDB中称为上限集合。 MongoDB文档描述了上限集合#xff1a; 上限集合是固定大小的集合#xff0c;它们支持高吞吐量操作#xff0c;这些操作根据插入顺序来插入… mongodb上限集合 在MongoDB中可以以循环方式将文档的插入顺序保留到集合中。 这些类型的集合在MongoDB中称为上限集合。 MongoDB文档描述了上限集合 上限集合是固定大小的集合它们支持高吞吐量操作这些操作根据插入顺序来插入检索和删除文档。 封顶的集合的工作方式类似于循环缓冲区一旦集合填满了分配的空间它就会通过覆盖集合中最旧的文件来为新文件腾出空间。” 好的所以我们知道什么是上限集合但是如何创建集合呢 在MongoDB Shell中我们将使用db.createCollection命令创建一个有上限的集合 db.createCollection(logs, {capped: true,size: 4096,max:5}) 该命令告诉MongoDB创建一个称为“日志”的集合最大大小为4096字节最多可容纳5个文档。 当添加第6个文档时第一个文档将从集合中删除确保该集合中最多只能有5个文档。 “ size”参数是必需的但是“ max”参数是可选的。 在Java中有两种与MongoDB进行通信的常用方法 MongoDB Java驱动程序以及Morphia 用于将Java对象映射到MongoDB或从MongoDB映射的轻量级类型安全映射库。 首先让我们首先来看一下Java驱动程序。 Java驱动 再次使用Java驱动程序我们使用db.createCollection命令这一次传递了BasicDBObject作为参数。 此参数具有字段“封顶”“大小”和“最大”这些字段指定对集合进行封顶集合的最大大小以字节为单位和集合中的最大条目数。 以下代码段显示了如何连接到MongoDB的本地实例并创建上限集合。 MongoClient mongoClient new MongoClient(new MongoClientURI(mongodb://localhost)); DB db mongoClient.getDB(test);DBCollection collection; if (!db.collectionExists(cappedLogsJavaDriver)) {BasicDBObject options new BasicDBObject(capped, true);options.append(size, 4096);options.append(max, 5);collection db.createCollection(cappedLogsJavaDriver, options); } else {collection db.getCollection(cappedLogsJavaDriver); } 创建集合后我们可以将文档插入其中以确保其按预期工作。 以下代码段显示了如何将8个文档插入到集合中请记住由于这是一个有上限的集合因此将仅存储其中的最后5个。 for (int i 0; i 8; i) {BasicDBObject logEntry new BasicDBObject(logId, i);collection.insert(logEntry); } 使用MongoDB交互式外壳我们可以验证现在存储在集合中的文档是否符合预期。 db.cappedLogsJavaDriver.find() { _id : ObjectId(54a1ca44a82617da4f72e025), logId : 3 } { _id : ObjectId(54a1ca44a82617da4f72e026), logId : 4 } { _id : ObjectId(54a1ca44a82617da4f72e027), logId : 5 } { _id : ObjectId(54a1ca44a82617da4f72e028), logId : 6 } { _id : ObjectId(54a1ca44a82617da4f72e029), logId : 7 }摩菲亚 现在我们已经了解了如何通过Java驱动程序创建集合让我们看看如何使用Morphia来完成相同的事情。 Morphia的本质是将Java类映射到MongoDB或从MongoDB映射。 我们希望保留在MongoDB中的类使用Entity注释进行注释然后将其存储在通常以该类进行命名的集合中。 要创建一个有上限的集合我们必须在Entity注释上添加其他值以指定集合中的最大条目数和集合的大小。 对与Java驱动程序示例中使用的对象类型相同的对象进行建模我们将创建一个LogEntry类如下所示 Entity(valuecappedLogsMorphia, capCappedAt(count5, value4096)) public class LogEntry {private int logId;Idprivate ObjectId id;public LogEntry(int logId) {this.logId logId;}public int getLogId() {return logId;}public void setLogId(int logId) {this.logId logId;} } 我们可以看到该类以Entity注释指定该集合最多应包含5个文档和4096字节的大小。 使用Morphia可以在启动时通过调用Morphia Datastore上的.ensureCaps .ensureCaps()方法来创建有上限的集合如下所示。 MongoClient mongoClient new MongoClient(new MongoClientURI(mongodb://localhost)); DB db mongoClient.getDB(test);Morphia morphia new Morphia(); morphia.map(LogEntry.class);Datastore datastore morphia.createDatastore(mongoClient, test); datastore.ensureCaps(); 再次和以前一样我们可以将8个文档插入到集合中以验证仅存储了最后5个文档。 for (int i 0; i 8; i) {LogEntry logEntry new LogEntry(i);datastore.save(logEntry); } db.cappedLogsMorphia.find() { _id : ObjectId(54a1ce9da82629642c64f5d9), className : com.davidsalter.cappedcollection.LogEntry, logId : 3 } { _id : ObjectId(54a1ce9da82629642c64f5da), className : com.davidsalter.cappedcollection.LogEntry, logId : 4 } { _id : ObjectId(54a1ce9da82629642c64f5db), className : com.davidsalter.cappedcollection.LogEntry, logId : 5 } { _id : ObjectId(54a1ce9da82629642c64f5dc), className : com.davidsalter.cappedcollection.LogEntry, logId : 6 } { _id : ObjectId(54a1ce9da82629642c64f5dd), className : com.davidsalter.cappedcollection.LogEntry, logId : 7 }检查收集状态 在MongoDB中创建一个有上限的集合后我们可以通过在Mongo DB交互式外壳程序中对该集合执行.stats()方法来检查其状态。 db.cappedLogsJavaDriver.stats() {ns : test.cappedLogsJavaDriver,count : 5,size : 180,avgObjSize : 36,storageSize : 4096,numExtents : 1,nindexes : 1,lastExtentSize : 4096,paddingFactor : 1,systemFlags : 1,userFlags : 0,totalIndexSize : 8176,indexSizes : {_id_ : 8176},capped : true,max : 5,ok : 1 } 在这里我们可以看到集合确实有上限“ capped” true并且集合中的最大条目数为5“ max” 5。 本文中使用的示例的源代码可以在GitHub上找到 。 翻译自: https://www.javacodegeeks.com/2015/03/creating-a-mongodb-capped-collection-in-java.htmlmongodb上限集合
http://www.zqtcl.cn/news/744574/

相关文章:

  • wordpress图床网站百度链接收录
  • 八年级信息网站怎么做电商网站的支付接入该怎么做呢
  • wordpress 的应用大兴安岭地网站seo
  • 网站建站作业做直播网站赚钱
  • 网站建设虍金手指花总简单免费制作手机网站
  • 京东网站是刘强冬自己做的吗献县网站建设价格
  • 余姚什么网站做装修比较好邢台企业做网站哪儿好
  • 网站建设后端国外购物平台排行榜前十名
  • 西安做百度推广网站 怎样备案简述商务网站建设
  • 如何建设本地网站东莞常平限电通知2021
  • 成都网站建设cdajcx重庆推广网站排名价格
  • 建网站的价格网店设计方案计划书
  • 长沙做公司网站如何制作个人网站教程
  • 做一个网站怎么做的仿qq网站程序
  • 曲靖市建设局网站官网织梦可以放两个网站
  • 网站建设方案ppt模板网站怎么做用户登录数据库
  • 做3d图的网站有哪些软件有哪些专业设计企业网站
  • 青海省wap网站建设公司做美工比较好的网站
  • 1个云虚拟主机怎么做多个网站网站规划与建设实验心得
  • led视频网站建设公众号代运营平台
  • 北京微信网站开发费用软件开发做平台
  • 平面设计师必备网站精湛的赣州网站建设
  • 上海市住房和城乡建设部网站官网wordpress页面点赞
  • 试玩平台类网站怎么做的东莞网站关键词推广
  • 网站开发慕枫页面模板怎么删除
  • 网站开发微信小程序需求量大吗珠海新闻头条最新消息
  • 闭站保护对网站影响公司主网站百度收录大量网站之类的信息
  • 在阿里云上建立网站的步骤在360网站做公告怎么弄
  • wordpress给公司建站安徽省干部建设教育网站
  • 做的网站需要买什么系统服务器找第三方做网站 需要注意