使用jackson操作json字符串


以下内容转自:https://blog.csdn.net/joyous/article/details/9448461

java Jackson 库操作 json 的基本演示

核心库下载地址

http://repo1.maven.org/maven2/com/fasterxml/jackson/core/

jackson-annotations-2.2.2.jar

jackson-core-2.2.2.jar

jackson-databind-2.2.2.jar

 

文件类型支持模块

http://repo1.maven.org/maven2/com/fasterxml/jackson/dataformat/

jackson-dataformat-xml-2.2.2.jar

 

导入库

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonEncoding;
import com.fasterxml.jackson.core.JsonParseException;

 

[java]  view plain  copy
 
  1. /** 
  2.  * Map 转换为 json 
  3.  */  
  4. public static void MyTest01()  
  5. {  
  6.   Map<String, String> hashMap = new HashMap<String, String>();  
  7.   hashMap.put("name""zhang");  
  8.   hashMap.put("sex""1");  
  9.   hashMap.put("login""Jack");  
  10.   hashMap.put("password""123abc");  
  11.   
  12.   try  
  13.   {  
  14.     ObjectMapper objectMapper = new ObjectMapper();  
  15.     String userMapJson = objectMapper.writeValueAsString(hashMap);  
  16.   
  17.     JsonNode node = objectMapper.readTree(userMapJson);  
  18.   
  19.     // 输出结果转意,输出正确的信息  
  20.     System.out.println(node.get("password").asText());  
  21.     // 输出不转意,输出结果会包含"",这是不正确的,除非作为json传递,如果是输出结果值,必须如上一行的操作  
  22.     System.out.println(node.get("name"));  
  23.   }  
  24.   catch (IOException e)  
  25.   {  
  26.   }  
  27. }  

 

[java]  view plain  copy
 
  1. /** 
  2.    * 解析 json 格式字符串 
  3.    */  
  4.   public static void MyTest03()  
  5.   {  
  6.     try  
  7.     {  
  8.       String str = "{\"data\":{\"birth_day\":7,\"birth_month\":6},\"errcode\":0,\"msg\":\"ok\",\"ret\":0}";  
  9.   
  10.       ObjectMapper mapper = new ObjectMapper();  
  11.       JsonNode root = mapper.readTree(str);  
  12.   
  13.       JsonNode data = root.path("data");  
  14.   
  15.       JsonNode birth_day = data.path("birth_day");  
  16.       System.out.println(birth_day.asInt());  
  17.         
  18.       JsonNode birth_month = data.path("birth_month");  
  19.       System.out.println(birth_month.asInt());  
  20.   
  21.       JsonNode msg = root.path("msg");  
  22.       System.out.println(msg.textValue());  
  23.     }  
  24.     catch (IOException e)  
  25.     {  
  26.     }  
  27.   }  

 

[java]  view plain  copy
 
  1. /** 
  2.    * json 直接提取 值 
  3.    */  
  4.   public static void MyTest05()  
  5.   {  
  6.     try  
  7.     {  
  8.       // 演示字符串  
  9.       String str = "{\"data\":{\"hasnext\":0,\"info\":[{\"id\":\"288206077664983\",\"timestamp\":1371052476},{\"id\":\"186983078111768\",\"timestamp\":1370944068},{\"id\":\"297031120529307\",\"timestamp\":1370751789},{\"id\":\"273831022294863\",\"timestamp\":1369994812}],\"timestamp\":1374562897,\"totalnum\":422},\"errcode\":0,\"msg\":\"ok\",\"ret\":0,\"seqid\":5903702688915195270}";  
  10.   
  11.       ObjectMapper mapper = new ObjectMapper();  
  12.       JsonNode root = mapper.readTree(str);  
  13.   
  14.       // 提取 data  
  15.       JsonNode data = root.path("data");  
  16.       // 提取 info  
  17.       JsonNode info = data.path("info");  
  18.   
  19.       System.out.println(info.size());  
  20.   
  21.       // 得到 info 的第 0 个  
  22.       JsonNode item = info.get(0);  
  23.       System.out.println(item.get("id"));  
  24.       System.out.println(item.get("timestamp"));  
  25.   
  26.       // 得到 info 的第 2 个  
  27.       item = info.get(2);  
  28.       System.out.println(item.get("id"));  
  29.       System.out.println(item.get("timestamp"));  
  30.   
  31.       // 遍历 info 内的 array  
  32.       if (info.isArray())  
  33.       {  
  34.         for (JsonNode objNode : info)  
  35.         {  
  36.           System.out.println(objNode);  
  37.         }  
  38.       }  
  39.   
  40.     }  
  41.     catch (Exception e)  
  42.     {  
  43.   
  44.     }  
  45.   }  

 

[java]  view plain  copy
 
  1. /** 
  2.  * 创建一个 json,并向该 json 添加内容 
  3.  */  
  4. public static void MyTest07()  
  5. {  
  6.   try  
  7.   {  
  8.     ObjectMapper mapper = new ObjectMapper();  
  9.     ObjectNode root1 = mapper.createObjectNode();  
  10.   
  11.     root1.put("nodekey1"1);  
  12.     root1.put("nodekey2"2);  
  13.   
  14.     System.out.println(root1.toString());  
  15.   
  16.   //Create the root node  
  17.     ObjectNode root = mapper.createObjectNode ();  
  18.     //Create a child node  
  19.     ObjectNode node1 = mapper.createObjectNode ();  
  20.     node1.put ("nodekey1"1);  
  21.     node1.put ("nodekey2"2);  
  22.     //Bind the child nodes  
  23.     root.put ("child", node1);  
  24.     //Array of nodes  
  25.     ArrayNode arrayNode = mapper.createArrayNode ();  
  26.     arrayNode.add (node1);  
  27.     arrayNode.add (1);  
  28.     //Bind array node  
  29.     root.put ("arraynode", arrayNode);  
  30.   
  31.     System.out.println (mapper.writeValueAsString (root));  
  32.     // 得到的输出信息  
  33.     // {"child":{"nodekey1":1,"nodekey2":2},"arraynode":[{"nodekey1":1,"nodekey2":2},1]}  
  34.   }  
  35.   catch (Exception e)  
  36.   {  
  37.   
  38.   }  
  39. }  

 

[java]  view plain  copy
 
  1. // 创建一个 array node  
  2. public static void MyTest07()  
  3. {  
  4.   try  
  5.   {  
  6.     ObjectMapper mapper = new ObjectMapper();  
  7.     ArrayNode arrayNode = mapper.createArrayNode();  
  8.   
  9.     int i = 0;  
  10.     // 在 array 内创建 3 组 node 存入 array  
  11.     for (i = 0; i < 3; i++)  
  12.     {  
  13.       // 创建一个 node  
  14.       ObjectNode node = mapper.createObjectNode();  
  15.   
  16.       node.put("nodeA", i);  
  17.       node.put("nodeB", i);  
  18.       node.put("nodeC", i);  
  19.   
  20.       // 向 array 内添 node  
  21.       arrayNode.add(node);  
  22.     }  
  23.   
  24.     // 根  
  25.     ObjectNode root = mapper.createObjectNode();  
  26.     root.put("total", i);  
  27.     root.put("rows", arrayNode);  
  28.   
  29.     System.out.println(mapper.writeValueAsString(root));  
  30.     // 得到的输出信息  
  31.     // {"total":3,"rows":[{"nodeA":0,"nodeB":0,"nodeC":0},{"nodeA":1,"nodeB":1,"nodeC":1},{"nodeA":2,"nodeB":2,"nodeC":2}]}  
  32.   }  
  33.   catch (Exception e)  
  34.   {  
  35.     e.printStackTrace();  
  36.   }  
  37. }  

在添加 array 节点时,put node 的方法已经过时,将使用 set 方法 添加 array 节点,举例:

root.set ("rows", arrayNode);

 

将 java object 转化为 json string,被转换的对象类似 YourObject 这样,利用 ObjectWrite 进行转换。

 

[java]  view plain  copy
 
  1. public YourObject  
  2. {  
  3.   private str = "";  
  4.   public void setStr(String str)  
  5.   {  
  6.     this.str = str;  
  7.   }  
  8.   public String getStr()  
  9.   {  
  10.     return str;  
  11.   }  
  12. }  

 

[java]  view plain  copy
 
  1. // 将 java 对象 转换为 json string  
  2. ObjectWriter objectWriter = new ObjectMapper().writer().withDefaultPrettyPrinter();  
  3. String json = null;  
  4. try  
  5. {  
  6.   json = objectWriter.writeValueAsString(yourObject);  
  7. }  
  8. catch (JsonProcessingException e)  
  9. {  
  10.   e.printStackTrace();  
  11. }  

 

XML 转换为 JSON 也可以利用 Jackson 完成

 

[java]  view plain  copy
 
  1. /** 
  2.  * 将 XML 转换为 JSON 
  3.  * @param args 
  4.  */  
  5. public void XML2JSON()  
  6. {  
  7.   String xml = "<default><column><title>Title 1</title><id>id1</id><value>val1</value></column>"  
  8.       + "<column><title>Title 2</title><id>id2</id><value>val2</value></column>"  
  9.       + "<column><title>Title 3</title><id>id3</id><value>val3</value></column></default>";  
  10.   try  
  11.   {  
  12.     XmlMapper xmlMapper = new XmlMapper();  
  13.     Map entries = xmlMapper.readValue(xml, Map.class);  
  14.     ObjectMapper jsonMapper = new ObjectMapper();  
  15.     String json = jsonMapper.writeValueAsString(entries);  
  16.     System.out.println(json);  
  17.   }  
  18.   catch (JsonParseException e)  
  19.   {  
  20.     e.printStackTrace();  
  21.   }  
  22.   catch (JsonMappingException e)  
  23.   {  
  24.     e.printStackTrace();  
  25.   }  
  26.   catch (JsonProcessingException e)  
  27.   {  
  28.     e.printStackTrace();  
  29.   }  
  30.   catch (IOException e)  
  31.   {  
  32.     e.printStackTrace();  
  33.   }  
  34. }  



 

JsonNode 字符串类型:textValue 有效, asText 有效,toString 获取的结果带引号
JsonNode 数值类型:textValue 获得的是 null, asText 有效, toString 有效,各输出方式比较如下,附代码:

 

原始信息 toString() asText() textValue() numberType()
123 123 123 null INT
123.456 123.456 123.456 null DOUBLE
"123.45600" "123.45600" 123.456 123.456 null
"" ""     null
"0" "0" 0 0 null
"null" "null" null null null
null null null null null

 

 

[java]  view plain  copy
 
  1. package other;  
  2.   
  3. import com.fasterxml.jackson.databind.ObjectMapper;  
  4. import com.fasterxml.jackson.databind.JsonNode;  
  5. import com.fasterxml.jackson.databind.JsonMappingException;  
  6. import com.fasterxml.jackson.databind.node.ObjectNode;  
  7. import com.fasterxml.jackson.databind.node.ArrayNode;  
  8. import com.fasterxml.jackson.core.JsonGenerator;  
  9.   
  10. import java.io.IOException;  
  11.   
  12. import com.fasterxml.jackson.core.JsonEncoding;  
  13. import com.fasterxml.jackson.core.JsonParseException;  
  14. import com.fasterxml.jackson.core.JsonParser.NumberType;  
  15. import com.fasterxml.jackson.core.JsonProcessingException;  
  16.   
  17. public class Jackson1  
  18. {  
  19.   
  20.   public static void main(String[] args)  
  21.   {  
  22.     String str = "{\"data\":{\"number1\":123,\"number2\":123.45600,\"number3\":\"123.45600\""  
  23.         + ",\"number4\":\"\",\"number5\":\"0\",\"number6\":\"null\",\"number7\":null}}";  
  24.   
  25.     try  
  26.     {  
  27.       ObjectMapper mapper = new ObjectMapper();  
  28.       JsonNode root = mapper.readTree(str);  
  29.   
  30.       JsonNode data = root.path("data");  
  31.   
  32.       for (int i = 1; i <= 7; i++)  
  33.       {  
  34.         String strNodeName = "number" + String.valueOf(i);  
  35.   
  36.         if (data.has(strNodeName) == true)  
  37.         {  
  38.           System.out.println(String.format("原始节点信息 %s", data.get(strNodeName)));  
  39.   
  40.           String str1 = data.get(strNodeName).toString();  
  41.           System.out.println(String.format("toString() 输出: %s", str1));  
  42.   
  43.           String str2 = data.get(strNodeName).asText();  
  44.           System.out.println(String.format("asText() 输出: %s", str2));  
  45.   
  46.           String str3 = data.get(strNodeName).textValue();  
  47.           System.out.println(String.format("textValue() 输出: %s", str3));  
  48.   
  49.           NumberType str4 = data.get(strNodeName).numberType();  
  50.           System.out.println(String.format("numberType() 显示: %s", str4));  
  51.   
  52.           System.out.println("-----------------------------------------------");  
  53.         }  
  54.       }  
  55.     }  
  56.     catch (JsonProcessingException e)  
  57.     {  
  58.       e.printStackTrace();  
  59.     }  
  60.     catch (IOException e)  
  61.     {  
  62.       e.printStackTrace();  
  63.     }  
  64.   }  
  65. }  



 

 

 

参考资料

https://github.com/FasterXML/jackson

 

 

blog.csdn.net/joyous/article/details/9448461
Q群讨论:236201801

[{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62445,"building_name":"中麻路川槎段","department_id":4068,"department_name":"川槎村","building_no":"001","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"个人管理","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62698,"building_name":"村政路","department_id":4068,"department_name":"川槎村","building_no":"002","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62703,"building_name":"村政路东","department_id":4068,"department_name":"川槎村","building_no":"003","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62703,"building_name":"村政路东","department_id":4068,"department_name":"川槎村","building_no":"003","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62703,"building_name":"村政路东","department_id":4068,"department_name":"川槎村","building_no":"003","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62703,"building_name":"村政路东","department_id":4068,"department_name":"川槎村","building_no":"003","floors":0,"units_of_each_floor":0,"building_type":"","devices":0,"pics":"","sxjx":"","fwjg":"","fwglzt":"","fdxm":"","fdxb":"女","fdwhcd":"","fdsfzh":"","fdlx":"二房东","fdlxfs":"","fdpoxm":"","fdim":"","fddz":"","fdtp":"","bz":""},{"building_id":62703,"building_name":"村政路东","department_id":4068,"department_name":"川槎村","building_no":"003","floo...


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM