当前位置: 首页>>代码示例>>Java>>正文


Java Document.keySet方法代码示例

本文整理汇总了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;
}
 
开发者ID:johnlpage,项目名称:MongoSyphon,代码行数:47,代码来源:MongoConnection.java

示例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;
}
 
开发者ID:dev-share,项目名称:database-transform-tool,代码行数:50,代码来源:MongoDBFactory.java


注:本文中的org.bson.Document.keySet方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。