1.前期准备
  参考文档《高性能elasticsearch ORM开发库使用介绍》导入和配置es客户端bboss
   2.mget操作
  简单而直观的多文档获取案例
       		ClientInterface clientUtil = ElasticSearchHelper.getRestClientUtil(); 		//获取json报文 		String response = clientUtil.mgetDocuments("agentinfo",//索引表 				  "agentinfo",//索引表类型 				  "10.21.20.168","192.168.0.143");//文档id清单 		System.out.println(response); 		//获取封装成对象的文档列表,此处是Map对象,还可以是其他用户定义的对象类型 		List<Map> docs = clientUtil.mgetDocuments("agentinfo",//索引表 			"agentinfo",//索引表类型 			Map.class,//返回文档对象类型 			"10.21.20.168","192.168.0.143");//文档id清单 		System.out.println(docs); 	 
  通过执行dsl获取多个文档的内容案例
          ClientInterface clientUtil =                  ElasticSearchHelper.getConfigRestClientUtil("esmapper/estrace/mget.xml"); 		//通过执行dsl获取多个文档的内容,具体可以参考文档: //https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-multi-get.html 		List<String> ids = new ArrayList<String>(); 		ids.add("10.21.20.168"); 		ids.add("192.168.0.143"); 		Map params = new HashMap(); 		params.put("ids",ids); 		String response = clientUtil.executeHttp("_mget", 			"testMget",//dsl定义名称 			params, //存放文档id的参数 			ClientUtil.HTTP_POST); 		System.out.println(response); 		List<Map> docs = clientUtil.mgetDocuments("_mget", 				"testMget",//dsl定义名称 				params, //存放文档id的参数 				Map.class);//返回文档对象类型 		System.out.println(docs);
  dsl定义-esmapper/estrace/mget.xml
  <!-- GET /_mget {             "docs" : [                 {                     "_index" : "agentinfo",                     "_type" : "agentinfo",                     "_id" : "10.21.20.168"                 },                 {                      "_index" : "agentinfo",                     "_type" : "agentinfo",                     "_id" : "192.168.0.143"                 }             ]         } --> <property name="testMget">     <![CDATA[          {             "docs" : [             #foreach($id in $ids)                 #if($velocityCount > 0),#end                 {                     "_index" : "agentinfo",                     "_type" : "agentinfo",                     "_id" : "$id"                 }             #end             ]         }         ]]> </property>
   3.更新索引文档部分信息案例
  简单api案例
          Map params = new HashMap(); 		Date date = new Date(); 		params.put("eventTimestamp",date.getTime()); 		params.put("eventTimestampDate",date); 		/** 		 * 更新索引部分内容 		 */ 		ClientInterface restClientUtil = ElasticSearchHelper.getRestClientUtil(); 		String response = restClientUtil.updateDocument("agentinfo",//索引表名称 				"agentinfo",//索引type 				"pdpagent",//索引id 				params,//待更新的索引字段信息 				"refresh");//强制刷新索引 		System.out.println(response);
  采用dsl案例
  ClientInterface configRestClientUtil =  ElasticSearchHelper.getConfigRestClientUtil("esmapper/agentstat.xml"); 		Map params = new HashMap(); 		Date date = new Date(); 		params.put("eventTimestamp",date.getTime()); 		params.put("eventTimestampDate",date); 		/** 		 * 采用dsl更新索引部分内容,dsl定义和路径api可以参考文档: 		 * https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update.html 		 */ 		StringBuilder path = new StringBuilder(); 		path.append("agentinfo/agentinfo/pdpagent/_update?refresh");//自行拼接rest api地址 		configRestClientUtil.updateByPath(path.toString(), 						"updateAgentInfoEndtime",//更新文档内容的dsl配置名称 				         params);
  dsl文件定义-esmapper/agentstat.xml
  <properties>     <!--     POST test/_doc/1/_update          {              "doc" : {              "name" : "new_name"              }          }     -->     <property name="updateAgentInfoEndtime">         <![CDATA[          {              "doc" : {                 "endTimestamp" : #[eventTimestamp],                 "endTimestampDate" : #[eventTimestampDate]              }          }         ]]>     </property> </properties>
   4.GetDocSource案例
  ClientInterface clientUtil = ElasticSearchHelper.getRestClientUtil(); 		//获取json报文索引source,不返回索引元数据 		String response = clientUtil.getDocumentSource("agentinfo/agentinfo/10.21.20.168/_source"); 		System.out.println(response); 		//获取对象类型source,此处对象类型是map,可以指定自定义的对象类型,不返回索引元数据 		Map data = clientUtil.getDocumentSource("agentinfo/agentinfo/10.21.20.168/_source",Map.class); 		System.out.println(data); 		//请求地址格式说明: 		// index/indexType/docId/_source 		// 实例如下: 		// "agentinfo/agentinfo/10.21.20.168/_source"
   5.几种经典的获取文档数据案例
  根据文档id获取
          //根据文档id获取文档对象,返回json报文字符串 		String response = clientUtil.getDocument("demo",//索引表 				"demo",//索引类型 				"2");//w  		System.out.println("打印结果:getDocument-------------------------"); 		System.out.println(response); 		//根据文档id获取文档对象,返回Demo对象 		demo = clientUtil.getDocument("demo",//索引表 				"demo",//索引类型 				"2",//文档id 				Demo.class);
  根据rest url获取
          ClientInterface clientUtil = ElasticSearchHelper.getRestClientUtil(); 		String response = clientUtil.getDocumentByPath("agentinfo/agentinfo/10.21.20.168"); 		System.out.println(response); 		Map data = clientUtil.getDocumentByPath("agentinfo/agentinfo/10.21.20.168",Map.class); 		System.out.println(data); 		//请求地址格式说明: 		// index/indexType/docId 		// 实例如下: 		// "agentinfo/agentinfo/10.21.20.168"
  更多bboss 使用文档可以参考:
  https://my.oschina.net/bboss/blog/1556866