本文整理汇总了Java中org.bson.Document.keySet方法的典型用法代码示例。如果您正苦于以下问题:Java Document.keySet方法的具体用法?Java Document.keySet怎么用?Java Document.keySet使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.bson.Document
的用法示例。
在下文中一共展示了Document.keySet方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: ParameteriseDocument
import org.bson.Document; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
private Document ParameteriseDocument(Document d, ArrayList<String> params,
Document parent) {
Document rval = new Document();
for (String key : d.keySet()) {
Object value = d.get(key);
// A string may be parameterised
if (value instanceof String) {
if (((String) value).startsWith("$")) {
try {
// Only $1 to $9 allowed
if (Character.isDigit(((String) value).charAt(1))) {
String paramNoString = ((String) value).substring(1,
2);
int paramNo = Integer.parseInt(paramNoString);
value = getFieldFromDocument(parent,
params.get(paramNo - 1)); // Replace with
// parent obj
}
} catch (Exception e) {
logger.info(e.getMessage());
}
}
} else if (value instanceof Document) {
// Recurse down
value = ParameteriseDocument((Document) value, params, parent);
} else if (value instanceof ArrayList) {
ArrayList<Object> newList = new ArrayList<Object>();
for (Object lv : (ArrayList<Object>) value) {
if (lv instanceof Document) {
newList.add(ParameteriseDocument((Document) lv, params,
parent));
} else {
// It's a scalar but we still need it
Document tmpDoc = new Document("value", "lv");
newList.add(ParameteriseDocument(tmpDoc, params, parent)
.get("value"));
}
}
value = newList;
}
rval.append(key, value);
}
return rval;
}
示例2: queryColumns
import org.bson.Document; //导入方法依赖的package包/类
/**
* @decription 查询数据表字段名(key:字段名,value:字段类型名)
* @author yi.zhang
* @time 2017年6月30日 下午2:16:02
* @param table 表名
* @return
*/
public Map<String,String> queryColumns(String table){
try {
if(session==null){
init(servers, database, schema, username, password);
}
MongoCollection<Document> collection = session.getCollection(table);
if (collection == null) {
return null;
}
Map<String,String> reflect = new HashMap<String,String>();
FindIterable<Document> documents = collection.find();
Document document = documents.first();
if(document==null){
return reflect;
}
for (String column : document.keySet()) {
Object value = document.get(column);
String type = "string";
if(value instanceof Integer){
type = "int";
}
if(value instanceof Long){
type = "long";
}
if(value instanceof Double){
type = "double";
}
if(value instanceof Boolean){
type = "boolean";
}
if(value instanceof Date){
type = "date";
}
reflect.put(column, type);
}
return reflect;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}