栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java BSON使用,spring代理模式面试题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java BSON使用,spring代理模式面试题

| 最大值 | 比所有值大 | 127 | { "key" : {"$maxKey": 1 } } |

Note:

不同类型字段的值进行比较时,比较优先级权值越大,该类型的值就越大。

Java 构造 BSON 数据类型
  • 整数/浮点数

Java BSON 构造整数/浮点数类型// {a:123, b:3.14}

BSonObject obj = new BasicBSonObject(); obj.put("a", 123); obj.put("b", 3.14); // or BSonObject obj2 = new BasicBSonObject().append("a", 123).append("b", 3.14); // or BSonObject obj3 = (BasicBSONObject) JSON.parse("{"a":123, "b":3.14}");

  • 高精度数

Java BSON 构造不带精度要求的Decimal类型// {a:{"$decimal":“12345.067891234567890123456789”}}

String str = "12345.067891234567890123456789"; BSonObject obj = new BasicBSonObject(); BSonDecimal decimal = new BSonDecimal(str); obj.put("a", decimal);

Java BSON 构造一个最多有100位有效数字,其中小数部分最多有30位的Decimal类型// {b:{“ d e c i m a l " : " 12345.067891234567890123456789 " , " decimal":“12345.067891234567890123456789”, " decimal":“12345.067891234567890123456789”,"precision”:[100, 30]}}

BSonObject obj2 = new BasicBSonObject(); BSonDecimal decimal2 = new BSonDecimal(str, 100, 30); obj2.put("b", decimal2);

  • 字符串

Java BSON 构造字符串类型// {a:“hi”}

BSonObject obj = new BasicBSonObject(); obj.put("a", "hi");

  • 空类型

Java BSON 构造空类型// {a:null}

`BSonObject obj = new BasicBSonObject(); obj.p

【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】

浏览器打开:qq.cn.hn/FTf 免费领取

ut(“a”, null);`

  • 对象

Java BSON 构造嵌套对象类型// {b:{a:1}}

BSonObject subObj = new BasicBSonObject(); subObj.put("a", 1); BSonObject obj = new BasicBSonObject(); obj.put("b", subObj);

  • 数组

Java BSON 使用 org.bson.types.BasicBSonList 来构造数组类型// {a:[0,1,2]}

BSonObject obj = new BasicBSonObject(); BSonObject arr = new BasicBSonList(); arr.put("0", 0); arr.put("1", 1); arr.put("2", 2); obj.put("a", arr);

  • 布尔

Java BSON 构造布尔类型// {a:true, b:false}

BSonObject obj = new BasicBSonObject(); obj.put("a", true); obj.put("b", false);

  • 对象 ID

Java BSON 使用 org.bson.types.ObjectId 来生成每条记录的“_id”字段内容。Java BSON 12 字节的 ObjectId 与 数据类型一节介绍的对象 ID 略有不同,目前,Java ObjectId 的 12字节内容由三部分组成:4字节精确到秒的时间戳,4字节系统(物理机)标示,4字节由随机数起始的序列号。默认情况下,数据库为每条记录生成一个字段名为“_id”的唯一对象 ID。

BSonObject obj = new BasicBSonObject(); ObjectId id1 = new ObjectId(); ObjectId id2 = new ObjectId("53bb5667c5d061d6f579d0bb"); obj.put("_id", id1);

  • 正则表达式

Java BSON 使用 java.util.regex.Pattern 来构造正则表达式数据类型。

BSonObject matcher = new BasicBSonObject(); Pattern obj = Pattern.compile("^2001",Pattern.CASE_INSENSITIVE); matcher.put("serial_num", obj); BSonObject modifier = new BasicBSonObject("$set", new BasicBSonObject("count",1000)); cl.update(matcher, modifier, null);

以上使用正则表达式构造了一个匹配条件,将序列号以“2001”开头的记录的“count”字段内容改为“1000”。

Note:

以上使用 Patten 构造的 bson matcher,当使用 matcher.toString(),内容为:

{ "serial_num" : { "$options" : "i" , "$regex" : "^2001"}}

通过以下 bson 构造方式也可以得到相同的内容:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/396955.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号