You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Spring Boot(Java)中向MongoDB字段追加值?

MongoDB 嵌套字段追加字符串的正确实现

你的代码存在两个核心问题:

  • 字段路径错误:要修改的是contact.name而非name
  • $concat参数写法错误:直接拼接字符串会生成固定文本,而非引用原有字段值

正确的Java驱动写法如下:

// 构建更新操作
Update update = new Update();
// 使用$concat拼接原有字段值和新字符串,注意字段引用要加$前缀
update.set("contact.name", new Document("$concat", Arrays.asList("$contact.name", " Wayne")));

// 执行更新(这里以根据_id匹配单条文档为例)
mongoCollection.updateOne(
    Filters.eq("_id", new ObjectId("64d4b688638bed43641ca2fb")),
    update
);

关键说明

  1. $contact.name:通过$前缀引用文档中已有的contact.name字段值
  2. " Wayne":要追加的字符串(前面加空格保证拼接后格式为Bruce Wayne)
  3. 若需要批量更新所有Person文档,将updateOne替换为updateMany即可

内容的提问来源于stack exchange,提问作者Rishi Raj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 00:24:54