gpt4 book ai didi

java - 如何将 MongoDB 与 ColdFusion 结合使用

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:01:36 27 4
gpt4 key购买 nike

我正在使用 MongoDB 3.2.3 和 mongo-java-driver-3.2.2.jar 库。

为了连接到服务器,然后连接到特定数据库,我执行了以下操作。然后我创建了一个名为 col1 的集合:

<cfset Mongo  = CreateObject("java","com.mongodb.MongoClient")>
<cfset Mongo.init("192.168.0.30")>
<cfset db = Mongo.getDatabase('testaj')>
<cfset db.createCollection("col1") >

为了将文档插入集合,我从互联网上获得了以下代码:

<cffunction name="m" returntype="any">
<cfargument name="value" type="any">
<cfif IsJSON(arguments.value)>
<cfset local.retrun = CreateObject("java","com.mongodb.util.JSON").parse(arguments.value)>
<cfelse>
<cfset local.retrun = CreateObject("java","com.mongodb.util.JSON").parse( SerializeJSON(arguments.value) )>
</cfif>
<cfreturn local.retrun>
</cffunction>

<cfset doc = {
"Name" = "Marc",
"Spouse"= "Heather",
"Fruit" = "Mango",
"Kids" = [
{"Name"="Alexis", "Age"=7, "Hair"="blonde", "Description"="crazy" },
{"Name"="Sidney", "Age"=2, "Hair"="dirty blonde", "Description"="ornery" }
],
"Bike" = "Felt",
"LoveSQL" = true,
"TS" = now(),
"Counter" = 1
}>
<cfset doc = SerializeJSON(doc)>
<cfset doc = m(doc)>

<cfset col1.save(doc)>

不幸的是,最后一行产生了以下错误:

No matching Method/Function for com.mongodb.MongoCollectionImpl.save(com.mongodb.BasicDBObject) found

这似乎是完全合乎逻辑的,因为当我输出(通过 cfdump)类 com.mongodb.MongoCollectionImpl 的内容时,我没有看到该方法保存

有谁知道如何使用这个 Java 驱动程序在 ColdFusion 中插入 MongoDB 文档?
我应该导入另一个库或类吗?

最佳答案

希望你现在已经找到了答案,因为这张票现在已经 5 个月了,但仅供引用:

要插入新文档,您应该使用 col1.insertOne(doc)col1.insertMany(docs)(如果您有数组)

要更新文档,您应该使用 col1.updateOne(query, values)col1.updatedMany(query, values)

正如 Leigh 所提到的,有关这方面的更多信息可以在以下位置找到:http://mongodb.github.io/mongo-java-driver/3.2/driver/getting-started/quick-tour/#mongodb-driver-quick-tour

关于java - 如何将 MongoDB 与 ColdFusion 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36308764/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com