Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java,每隔3小时自动在Mongodb中插入文本数据值,例如(日期时间PH值)_Java_Mongodb - Fatal编程技术网

使用java,每隔3小时自动在Mongodb中插入文本数据值,例如(日期时间PH值)

使用java,每隔3小时自动在Mongodb中插入文本数据值,例如(日期时间PH值),java,mongodb,Java,Mongodb,我有一个mongodb数据库,我需要使用java每隔3小时自动插入文本数据值,例如(日期时间PH值)。 需要帮助吗 我制作了一个名为project的mongodb数据库和名为Water Monetering system的集合 这里还有java-mongodb集成的基本布局 import com.mongodb.MongoClient; import com.mongodb.MongoException; import com.mongodb.WriteConcern; import com.m

我有一个
mongodb
数据库,我需要使用java每隔3小时自动插入文本数据值,例如(日期时间PH值)。 需要帮助吗

我制作了一个名为project的
mongodb
数据库和名为Water Monetering system的集合

这里还有java-mongodb集成的基本布局

import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import com.mongodb.WriteConcern;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ServerAddress;
import java.util.Arrays;
public class MongoDBJDBC{

  public static void main( String args[] ){

     try{
        // To connect to mongodb server
        MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
        // Now connect to your databases
        DB db = mongoClient.getDB( "project" );
        System.out.println("Connect to database successfully");

        DBCollection coll = db.getCollection("WaterMoneteringSystem");
        System.out.println("Collection WaterMoneteringSystem selected successfully");
        BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
        append("Date", "date").
        append("time", "time").
        append("value", "ph").
        coll.insert(doc);
        System.out.println("Document inserted successfully");

     }catch(Exception e){
       System.err.println( e.getClass().getName() + ": " + e.getMessage() );
   }
}
}
我不知道如何实现文本框中的数据(日期时间PH)

谢谢你,而不是:

BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
append("Date", "date").
append("time", "time").
append("value", "ph");
你需要像这样的东西:

BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
append("Date", new Date()).
append("value", "ph");
String phValue = args[0];
BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
append("Date", new Date()).
append("value", phValue);
newdate()
调用将在其中设置今天的日期和时间(日期和时间不需要单独的字段)

但是
“ph”
位需要来自其他地方-从哪里获取ph值?它是否将成为一个参数(即在args[])?它是来自文件还是外部系统

假设您可以将其传递给该方法,您可以执行以下操作:

BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
append("Date", new Date()).
append("value", "ph");
String phValue = args[0];
BasicDBObject doc = new BasicDBObject("title", "Watermoneteringsystem").
append("Date", new Date()).
append("value", phValue);
我建议将字段重命名为“ph”或“phValue”,因为“value”不是一个有用的字段名


看一下文档,这里有更多关于如何从Java使用MongoDB的示例。

我不确定您的意思。为什么不将要存储在调用中的值放入每个字段的
append
?这是函数的第二个参数。