English 中文(简体)
• 保险——由MongoDB通过 Java在安全的条件下通过 Java插入的物体生成识别器
原标题:Concurrency - Getting the MongoDB generated ID of an object inserted via Java in a thread safe way

What is the best method to get the Mongo generated ID of a document inserted via Java.

Java进程插入文件是多面的,这意味着我们需要某种原样的办法来插入和归还物体的识别。

Also, if we setup a unique index, in the event that the object is a duplicate, will an ID be returned?

感谢!

最佳回答

Generate the ObjectId early, use it in the insert, and there will no need to have the database return it to you. ObjectId doesn t use a shared sequence number to be unique, so it doesn t matter if you generate one before inserting or retrieve it after.

public ObjectId createThing() {
    ObjectId result = new ObjectId();
    BasicDBObject thingToInsert = new BasicDbObject();
    thingToInsert.put( _id , result);
    //set other fields here
    collection.insert(thingToInsert);
    return result;
}
问题回答

土 地 Mongo产生的迷魂药在全球是独一无二的,可以从多面应用中安全使用。

generated ObjectId can be obtained from the DbObject under _id key.

If inserted document violates a unique index constraint - java driver may throw an exception, depending on a value of WriteConcern:

 http://api.mongodb.org/java/current/com/mongodb/WriteConcern.html

如果其价值更高,那么NORMAL-例外就会被推翻。

可以通过使用行文法,具体针对每个个人添加(或更新)方法,或在全球范围进行写作。

I retrieve the document with _id but when I get the data into my java class eg mobile, _id attribute which is of type ObjectID me I change it set the value of the document in mongodb.





相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签