如何在Netbeans的运行配置中设置MONGOHQ_URL环境变量?

时间:2012-04-17 17:05:49

标签: java mongodb heroku netbeans-7

我们正在努力将Java项目部署到使用MongoDB的Heroku。根据{{​​3}},从环境变量MONGOHQ_URL读取数据库连接参数。当我在笔记本电脑上运行Netbeans项目时,如何设置此变量?

我尝试将其作为VM选项添加到运行中的-DMONGOHQ_URL=... - >设置项目配置 - >自定义 - >运行以及操作 - >通过main()运行项目和运行文件,但无济于事。当程序用System.getvar读取它时,它没有设置。

2 个答案:

答案 0 :(得分:0)

您可以在 netbeans.conf 文件中进行设置。添加以下行:

export MONGOHQ_URL=...

这里有一个例子:http://sunng.info/blog/2009/12/setting-environment-variables-for-netbeans/

答案 1 :(得分:0)

好的,我明白了。这对Java编码员来说可能是显而易见的,但我不是一个,所以这就是我拼凑在一起的东西。

    String mongo_url = System.getenv("MONGOHQ_URL");
    // If env var not set, try reading from Java "system properties"
    if (mongo_url == null) {
        mongo_url = System.getProperty("MONGOHQ_URL");
    }

    MongoURI mongoURI = new MongoURI(mongo_url);
    this.db = mongoURI.connectDB();

    // Only authenticate if username or password provided
    if (!"".equals(mongoURI.getUsername()) || mongoURI.getPassword().length > 0) {
        Boolean success = this.db.authenticate(mongoURI.getUsername(), mongoURI.getPassword());  

        if (!success) {
            System.out.println("MongoDB Authentication failed");
            return;
        }
    }
    this.my_collection = db.getCollection("my_collection");