問題タブ [mongo-java-driver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - MongoDB 3.2ドキュメントにオブジェクトを挿入するには?
私はUser
また、私は単純なPOJOを持っていますComment
次のように、彼に関する何らかのコメントを付けて、新しいユーザーをコレクションに挿入する方法:
残念ながら、例外があります:
MongoDB の Java ドライバーがオブジェクトを変換できず、Document
何らかのコンバーターが必要であることを理解しています。Codec
、CodecRegistry
およびCodecProvider
インターフェースについても知っています。ところで、オブジェクトを mongo ドキュメントに変換する簡単な方法はありますか? どうすればそれを行うことができるか例を示してもらえますか? ありがとうございました。
mongodb - 正規表現を使用したMongo dbでのネストされた配列検索
ネストされた配列を検索するためのクエリは次のとおりです。
次の正規表現 Array1.field1.nestedArray1.content を使用してみました
しかし、私は適切な結果を得ることができません..上記のクエリは正しい形式ですか?
java - ドキュメント構造を変更したときに、mongoDB Java ドライバーで既存のドキュメントを更新する
プログラムの以前のバージョンからのいくつかの既存のフィールドを持つプレーヤーデータのデータベースがあります。古いドキュメントの例:
しかし、新しいバージョンで生成されたプレーヤー ドキュメントは次のようになります。
問題は、クエリを実行しようとすると、playercurrency
が存在しないfoo
ために NullPointerException が発生することです。に保存できる他のデータを邪魔することなく、フィールドをに追加したいと考えています。例を使用していくつかのコードを試しました:playercurrency
foo
playercurrency
foo
foo
$exists
私の考えでは、それplayercurrency
が存在しないという理由だけで更新され、存在するために放置されるというplayername
ことです。これは私の最初の MongoDB プロジェクトの 1 つであり、できる限り多くのことを学びたいので、exists をひどく間違って使用している可能性があります。
java - MongoDB接続がJavaで確立されているかどうかを確認するには?
私のアプリでは、MongoDB 3.2.4 がカスタム ポートで実行されます。アプリがカスタム ポートで MongoDB にアクセスしようとし、失敗した場合はデフォルト27018
ポートを使用するロジックを実装したいと考えています。
そのために、次のコードを使用します。
問題は、この例外がキャッチされないことです。ただし、MongoDB は次の例外をスローします。
com.mongodb.MongoSocketOpenException: com.mongodb.connection の com.mongodb.connection.SocketStream.open(SocketStream.java:63) でソケットを開いているときに例外が発生しました。 DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:128) at java.lang.Thread.run(Thread.java:745) 原因: java.net.ConnectException: 接続拒否: java.net.DualStackPlainSocketImpl.waitForConnect(Native で接続) Method) で java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85) で java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) で java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) で java. net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) で java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) で java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) で java.net.Socket.connect(Socket.java) :589) com.mongodb.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:50) で com.mongodb.connection.SocketStream.open(SocketStream.java:58) で ... 3 詳細
私のtry-catch
式はこの例外をキャッチできません。
キャッチするなど、複数のアプローチを試しました。
Exception
RuntimeException
MongoSocketOpenException
MongoException
MongoCommandException
それらのどれも機能しません。
私の質問:
- MongoDB 接続が確立されているかどうかを確認するにはどうすればよいですか?
- どうすれば例外をキャッチできます
MongoSocketOpenException
か?
mongodb - javaドライバーを介してmongo dbにアクセスしているときに、読み取り時のソケットタイムアウトにより接続も閉じられますか?
Javaドライバー(v2.10)を介して(春のデータを介して)mongo db(v2.6)にアクセスしています。アプリケーションがソケット タイムアウト例外を受け取った場合、基になる接続も閉じられていますか?
java - MongoDB 3、Java ドライバー、全文検索、方法
mongodb 2 で Java ドライバーを使用して全文検索を使用する方法を確認できます。
mongodb 2、全文検索でJavaドライバーを使用する方法
しかし、mongodb 3 ではこれは機能しません。Java ドライバー/mongodb 3 で全文検索を行う方法を知っている人はいますか?