Java 如何将MongoDB与ColdFusion结合使用

Java 如何将MongoDB与ColdFusion结合使用,java,mongodb,coldfusion,Java,Mongodb,Coldfusion,我正在使用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')&g

我正在使用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") >
这似乎是完全合乎逻辑的,因为当我(通过
cfdump
)输出类
com.mongodb.MongoCollectionImpl
的内容时,我看不到方法
save

有人知道如何使用此Java驱动程序在ColdFusion中插入MongoDB文档吗?

我应该导入另一个库或类吗?

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

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

要更新文档,应使用
col1.updateOne(查询,值)
col1.updateMany(查询,值)


如Leigh所述,有关这方面的更多信息可以在以下网址找到:

我正在使用MongoDB 4.0、Mongo Java驱动程序3.8.0和CF11。经过反复试验,我使下面的代码正常工作。密钥正在转换为org.bson.document。希望它能为其他人节省一些时间

<cfset Mongo  = CreateObject("java","com.mongodb.MongoClient").init("localhost")>
<cfset db = Mongo.getDatabase('testDB')>
<cfset testCol = db.getCollection("testCol")>

<cfscript>
x=structnew();
x.name="John Doe";
x.address="1010 Yellow Brick Road";
x.phone="867-5309"
</cfscript>

<cfset data=CreateObject("java","org.bson.Document").init(x)>
<cfset testCol.insertOne(data)>

x=structnew();
x、 name=“约翰·多伊”;
x、 地址=“黄砖路1010号”;
x、 电话=“867-5309”

db.col1.save(doc)
?或者
db.testaj.save(doc)
?我看不到您在代码中创建
col1
变量的位置。它不应该是:
col1=db.getCollection(“col1”);col1.插入(doc)
?你好,John。。给你:嗨,米格尔。不,2 Syntax不起作用。它生成以下错误:(在[com.mongodb.MongoDatabaseImpl]中找不到匹配的属性[TESTAJ](或col1)John,您知道syntaxe col1=db.getCollection(“col1”)用于哪个版本的驱动程序吗;col1.insert(doc)有效吗?谢谢steve-插入时间戳也有效,并将由数据集中正确的日期类型表示<代码>x.mytime=Now()(是的,我知道ObjectID还表示时间戳:)
No matching Method/Function for com.mongodb.MongoCollectionImpl.save(com.mongodb.BasicDBObject) found
<cfset Mongo  = CreateObject("java","com.mongodb.MongoClient").init("localhost")>
<cfset db = Mongo.getDatabase('testDB')>
<cfset testCol = db.getCollection("testCol")>

<cfscript>
x=structnew();
x.name="John Doe";
x.address="1010 Yellow Brick Road";
x.phone="867-5309"
</cfscript>

<cfset data=CreateObject("java","org.bson.Document").init(x)>
<cfset testCol.insertOne(data)>