如何将solr响应后的namedList转换成json实例代码
2012-03-21 09:50
537 查看
/***********************************************/ //>将返回的namedList转换成Json格式 //>如何将CoreAdminRequest.getStatus("",server); //>需要依赖的jar处理solr的jar之外还要orgJson.jar /***********************************************/ /***********************************************/ >0.示例代码 public void getCoreContainerStats() { try { String solrServerUrl = "http://" + this.sc.getIp() + ":" + this.sc.getPort() + "/" + this.sc.getAppName() + "/"; CoreAdminRequest req = new CoreAdminRequest(); req.setAction(org.apache.solr.common.params.CoreAdminParams.CoreAdminAction.STATUS); server = new CommonsHttpSolrServer(solrServerUrl); CoreAdminResponse cr = req.process(server); StringBuffer sb = new StringBuffer(); NamedList ctLst = cr.getCoreStatus();// 得到所有在容器中的实例信息 NamedList headLst = cr.getResponseHeader();// 得到响应的头信息 Map mp = new HashMap(); for (int i = 0; i < headLst.size(); i++) { mp.put(headLst.getName(i), headLst.getVal(i)); } // 将响应的头的map转换成一个json对象然后添加到里面 List mLst = new ArrayList(); // 如果有多实例的话就看作一个数组 for (int i = 0; i < ctLst.size(); i++) { System.out.println("========================="); SimpleOrderedMap smp = (SimpleOrderedMap) ctLst.getVal(i); System.out.println(ctLst.getName(i)); System.out.println(ctLst.getVal(i)); Map p = new HashMap(); SimpleOrderedMap sap = (SimpleOrderedMap) ctLst.getVal(i); mLst.add(p); Map a = new HashMap(); for (int k = 0; k < sap.size(); k++) { p.put(sap.getName(k), sap.getVal(k)); // 得到index节点 SimpleOrderedMap op = (SimpleOrderedMap) sap.get("index"); p.put("index", a); for (int j = 0; j < op.size(); j++) { a.put(op.getName(j), op.getVal(j)); } } } Map pp = new HashMap(); pp.put("status", mLst); pp.put("responseHeader", mp); this.sc.setSolrCoreContainerStats(pp); } catch (Exception e) { e.printStackTrace(); } } /***********************************************/ /***********************************************/ >1.实例json //var s = { // "appName" : "solrQuery", // "port" : "8080", // "hasBeenCreated" : "true", // "solrHome" : "D:/03workspaces/solrQuery/solrhome", // "solrCoreContainerStats" : { // "responseHeader" : { // "status" : 0, // "QTime" : 0 // }, // "status" : [ // { // "startTime" : "Thu Mar 22 13:13:42 CST 2012", // "index" : { // "segmentCount" : 0, // "numDocs" : 0, // "lastModified" : "Tue Mar 20 13:26:40 CST 2012", // "directory" : "org.apache.lucene.store.MMapDirectory:org.apache.lucene.store.MMapDirectory@D:\\03workspaces\\solrQuery\\solrhome\\data\\index lockFactory=org.apache.lucene.store.NativeFSLockFactory@a0ccc96", // "current" : true, // "maxDoc" : 0, // "hasDeletions" : false, // "version" : 1332221200864 // }, // "instanceDir" : "D:\\03workspaces\\solrQuery\\solrhome\\.\\", // "name" : "", // "uptime" : 830146, // "dataDir" : "D:\\\\03workspaces\\\\solrQuery\\\\solrhome\\.\\data\\" // }, // { // "startTime" : "Thu Mar 22 13:15:54 CST 2012", // "index" : { // "segmentCount" : 0, // "numDocs" : 0, // "lastModified" : "Thu Mar 22 13:15:55 CST 2012", // "directory" : "org.apache.lucene.store.MMapDirectory:org.apache.lucene.store.MMapDirectory@D:\\03workspaces\\solrQuery\\solrhome\\solrcore10\\data\\index lockFactory=org.apache.lucene.store.NativeFSLockFactory@69b8b810", // "current" : true, // "maxDoc" : 0, // "hasDeletions" : false, // "version" : 1332393355047 // }, // "instanceDir" : "D:\\03workspaces\\solrQuery\\solrhome\\solrcore10\\", // "name" : "solrcore10", // "uptime" : 698103, // "dataDir" : "D:\\03workspaces\\solrQuery\\solrhome\\solrcore10\\data\\" // } ] // }, // "instanceDir" : "D:/03workspaces/solrQuery/solrhome/solrcore10", // "solrCoreName" : "solrcore10", // "ip" : "localhost" //}; /***********************************************/
相关文章推荐
- gson java对象与json转换(实例代码说明及教程)
- 详解json string转换为java bean及实例代码
- javascript如何将响应的String类型转换成Json类型
- js实现json数据行到列的转换的实例代码
- C#中把Datatable转换为Json的5个代码实例
- JS中如何比较两个Json对象是否相等实例代码
- jQuery扩展方法实现Form表单与Json互相转换的实例代码
- 如何通过Java代码将JSONObject转换为对象
- C#中把Datatable转换为Json的5个代码实例
- C#中把Datatable转换为Json的5个代码实例
- js实现json数据行到列的转换的实例代码
- C#中把Datatable转换为Json的5个代码实例
- asp.net C#如何实现当地时区转换的代码实例
- [Android实例] Android JSON解析示例代码
- 如何将lucene和solr代码导入eclipse
- 整数转换成字符型的两种方法c++代码实例及运行结果
- MapGuide应用开发系列(四)---- 如何运行第一个.net实例代码
- Json转换利器Gson之实例六-注册TypeAdapter及处理Enum类型
- Json格式类的转换相关代码--转载
- struts2中类型转换实例代码