0
私はSpring-data-mongodb
プロジェクトで単純なmavenプロジェクトを持っています。そして、私はデータベース接続の詳細を指定(オーバーライド)する必要があります。 MongoDBデータベースはデフォルト設定(port = 27017)でlocalhost上で動作します。私は、プロジェクトのすべてが正常に動作しますが、私はそれがこの設定といけない実行すると私の主なファイルは、このスプリングデータmongodbオーバーライド設定
public class MongoApp {
private static final Log log = LogFactory.getLog(MongoApp.class);
public static void main(String[] args) throws Exception {
MongoOperations mongoOps = new MongoTemplate(new MongoClient(), "database");
mongoOps.insert(new Person("Joe", 34));
log.info(mongoOps.findOne(new Query(where("name").is("Joe")), Person.class));
// mongoOps.dropCollection("person");
}
}
のように見えますAppConfig
@Configuration
@EnableMongoRepositories
public class AppConfig extends AbstractMongoConfiguration {
@Override
protected String getDatabaseName() {
return "TestDatabase";
}
@Override
public Mongo mongo() throws Exception {
// wrong port on purpose
return new MongoClient("127.0.0.1", 27007);
}
}
使用しようとしています。
プロジェクト構造
main
-AppConfig.java
-MongoApp.java
-Person.java
Everythinで結構です。それでは、あなたは何を求めていますか?あなたはapplication.propertiesから設定を取得したいですか? – barbakini
私はそれをする方法を知っていません...私はちょうどなぜこれが働いているのかわかりません...指定されたポート27007が間違っているので。私のローカルdbは27017で動く。だから、私のAppConfigは無視されていると思う。 – TomP
dbから何かを取得しようとしましたか? Springは遅延接続を確立できます。したがって、最初のリクエストまで接続例外はありません – barbakini