2016-05-17 6 views
0

6つのドキュメントを含むmongoのコレクションがあります。mongoで直接クエリを実行すると、qorking fine.Butで同じクエリを実行すると、私は別の春バージョンと異なるのmongoバージョンのANSを試みたが、動作していないMongoでクエリが動作していますが、spring-data-mongoで作業していません

Query q = new BasicQuery("{ column_1: 'value_1'}"); 
    this.mongoOps.find(q, TableName.class, "table_name"); 

:私は、私は次のクエリ

Mongo DB: db.getCollection('table_name').find({"column_1" : "value_1" }) 

春を持っている結果

を取得しておりませんここで何が問題になるか。

注:あなたが使用Queryクラスconsideratingしている場合、クエリは、同様にJDBCで事前に

おかげで...

+0

を持っていないので、我々は、フィールドに列を呼び出すことはありませんモンゴに覚えておいてくださいあなたは6 * Documents *のCollection *を持っていると思います。そして、 'クエリはJDBCと連携しています 'と言うと、この部分はありません。 JDBCはリレーショナルデータベース向けで、MongoはNoSQLです。 –

+1

@AliDehghaniありがとう私は更新しました – PSR

+0

@AliDehghani私はプレーンjdbcで動作していますそれは動作しています – PSR

答えて

1

を働いている、追加してみてくださいCriteria

Query query = new Query(); 
query.addCriteria(Criteria.where("field_1").in("value_1")); 

編集 BasicQueryを使用する場合は、次を試してみてください。

BasicQuery query1 = new BasicQuery("{ 'field': 'value_1' }"); 
User userTest1 = mongoOperation.findOne(query1, YourClass.class); 

それはあなたが `Mongo`を使用している場合、あなたはあなたのを記述するために正しい*用語*を使用する必要があり、列:)

+0

私もこれを試しました – PSR

+0

@PSR私は編集:D – cheloncio

+0

たとえば、私は列を与えた。私は正確にフィールド名を使用した – PSR

関連する問題