拍拍区域js文件网址:
http://static.paipaiimg.com/js/regiondata.js?t=20091111
树形结构网址:
http://pop.paipai.com/resources/address.html
需取出js文件中的Json数据,不能直接使用js文件。
代码如下:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.Map;
import com.winxuan.paipai.domain.area.PaipaiArea;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
/**
* 将拍拍Json格式的js文件转换为insert...格式的sql文件
*
* @author qiaoyao
* @version 1.0,2010-6-13
*/
public class PaipaiAreaTest {
private static final String insertNoParent = "insert into paipai_area(id,name,available) values(%d,'%s',1);";
private static final String insertWidthParent = "insert into paipai_area(id,name,available,parent) values(%d,'%s',1,%d);";
private static BufferedWriter output;
public static void main(String[] args) throws IOException {
output = new BufferedWriter(new FileWriter("d:/sql_area.txt"));
getArea(JsonConvertTestUtils.JSON_AREA, null);
output.close();
System.out.println("生成d:/sql_area.txt成功!!!");
}
@SuppressWarnings("unchecked")
public static void getArea(String str, PaipaiArea parent) {
JSONObject jsonCountry = JSONObject.fromObject(str);
Iterator<?> iteratorProvince = jsonCountry.entrySet().iterator();
PaipaiArea area;
while (iteratorProvince.hasNext()) {
area = new PaipaiArea();
Map.Entry<String, JSONArray> mapProvince = (Map.Entry<String, JSONArray>) iteratorProvince
.next();
area.setParent(parent);
area.setId(new Integer(mapProvince.getKey()));
JSONArray jsonArray = mapProvince.getValue();
if (jsonArray.size() > 0) {
area.setName(jsonArray.get(0).toString());
printInsertSql(area);
if (jsonArray.size() > 2) {
getArea(jsonArray.get(2).toString(), area);
}
}
}
}
public static void printInsertSql(PaipaiArea area) {
String result = "";
if (area.getParent() != null) {
result = String.format(insertWidthParent, area.getId(), area
.getName(), area.getParent().getId());
} else {
result = String
.format(insertNoParent, area.getId(), area.getName());
}
try {
output.write(result + "\n");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
/**
* Json格式数据常量类
*
* @author qiaoyao
* @version 1.0,2010-6-2
*/
public class JsonConvertTestUtils {
public static String JSON_ORDER_LIST = "";
public static String JSON_ORDER = "";
public static String JSON_ITEM_LIST = "";
public static String JSON_ITEM = "";
public static String JSON_AREA = "";
static {
try {
String currentPath = "d:/temp";
JSON_ORDER_LIST = readerFile(currentPath + "/orderList.txt");
JSON_ORDER = readerFile(currentPath + "/order.txt");
JSON_ITEM = readerFile(currentPath + "/item.txt");
JSON_AREA = readerFile(currentPath + "/area.txt");
} catch (IOException e) {
e.printStackTrace();
}
}
public static String readerFile(String path) throws IOException {
BufferedReader reader = null;
StringBuffer sb = new StringBuffer();
reader = new BufferedReader(new InputStreamReader(new FileInputStream(
path), Charset.forName("gbk")));
String tempString = "";
while ((tempString = reader.readLine()) != null) {
sb.append(tempString);
}
return sb.toString();
}
}
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import com.xhbs.b2c.domain.codetable.Area;
/**
* Paipai区域对象
*
* @author qiaoyao
* @version 1.0,2010-6-13
*/
@Entity
@Table(name = "paipai_area")
public class PaipaiArea {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "description")
private String description;
@Column(name = "available")
private boolean available;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "parent")
private PaipaiArea parent;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "parent", fetch = FetchType.LAZY, targetEntity = PaipaiArea.class)
private Set<PaipaiArea> children;
@ManyToOne(cascade = { CascadeType.MERGE, CascadeType.PERSIST }, targetEntity = Area.class)
@JoinTable(name = "paipai_areamapping", joinColumns = { @JoinColumn(name = "_paipaiarea") }, inverseJoinColumns = { @JoinColumn(name = "_b2carea") })
private Area area;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public boolean isAvailable() {
return available;
}
public void setAvailable(boolean available) {
this.available = available;
}
public PaipaiArea getParent() {
return parent;
}
public void setParent(PaipaiArea parent) {
this.parent = parent;
}
public Set<PaipaiArea> getChildren() {
return children;
}
public void setChildren(Set<PaipaiArea> children) {
this.children = children;
}
public Area getArea() {
return area;
}
public void setArea(Area area) {
this.area = area;
}
}
分享到:
相关推荐
通过以上步骤,我们可以很容易地使用 Python 将 JSON 数据转换为文本或 SQL 文件格式。这种转换对于数据迁移、数据备份和数据分析等场景非常有用。希望这篇文章能帮助你在实际工作中更好地处理 JSON 数据。
首先,我们要了解的是`js`和`json`这两种文件格式。JavaScript(js)是一种广泛用于网页和网络应用的编程语言,而JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于...
Flume二次开发,支持抽取MYSQL Oracle数据库数据 以JSON格式推送至Kafka。 demo: sql_json.sources.sql_source.type = com.hbn.rdb.source.SQLSource sql_json.sources.sql_source.connectionurl = jdbc:oracle:...
3. `json_parse.js`:这个名字暗示了这个文件专注于JSON解析,可能包含一个自定义的解析器,用于将JSON字符串转化为JavaScript对象。 4. `json_parse_state.js`:可能包含了JSON解析过程中的状态管理代码,用于跟踪...
为了在Three.js中使用BIM模型,通常需要将BIM格式(如IFC、Revit等)转换成Three.js能识别的格式,如JSON。转换工具如IfcJS或Revit to Three.js可以帮助完成这一步。 五、实际应用 结合Three.js加载JSON模型的功能...
本教程将详细介绍如何使用GDAL将`.shp`(Shapefile)文件转换为`.json`文件,以便于在Web应用程序中使用,如Echarts这样的JavaScript图表库。 首先,了解`.shp`文件。它是一种由Esri开发的常见矢量地理数据格式,...
JsonSql.js是一个强大的JavaScript库,专门用于处理JSON数据,提供了类似SQL的功能,使得在前端或者Node.js环境中操作JSON数据变得更加方便。这个库的核心是将JSON数据的查询、筛选、统计和分组等操作抽象成一个易于...
全国行政区域json格式文件是一种数据组织方式,常用于地理信息系统(GIS)或数据分析项目中,以便于处理和展示中国的行政区域信息。这种文件通常包含了中国所有省份、地级市、县级市、区县等行政单位的数据,每个...
接下来,关于`json.js`,这可能是用于处理JSON格式化的具体函数库,提供了将JSON数据格式化为标准格式的功能,如缩进、换行等。在`EditPlus`中,可以通过定义快捷键或者自定义菜单来调用这些功能。 至于`...
标题 "grib2json -- 将grib2文件转换为json格式" 描述了将气象学中的grib2文件转化为更便于处理和分析的json格式的过程。grib2是一种广泛用于存储气象预报、气候数据和其他环境信息的二进制文件格式。而json...
当需要将JSON数据批量转换为TXT格式时,可以借助Python的内置库`json`来实现。 标题中的"python json文件转txt文件,批处理json文件转换成一个txt文件",指的是使用Python编写脚本来读取多个JSON文件,解析其内容,...
**JsonSQL: SQL语句解析JSON文件** 在大数据处理和Web应用中,JSON(JavaScript Object Notation)格式已经...通过熟悉且强大的SQL语法,JsonSQL为处理JSON数据带来了便利,尤其是在需要复杂查询和过滤操作的场景下。
json格式的中文字体库threejs支持的格式 一共包含6个字体库 阿里黑体:AlimamaShuHeiTi_Bold.json 仿宋体:FangSong_Regular.json 微软雅黑常规:MicrosoftYaHei_Regular.json 微软雅黑加粗:MicrosoftYaHei_Bold....
JSON格式用于存储和传输数据,而TXT则是一种简单的文本文件格式。在处理大量JSON数据时,有时我们需要将这些数据转换为TXT文件,以便于分析或进一步处理。本教程将详细讲解如何使用Python批量将JSON文件转换为TXT...
JSON文件通常由工具如`Glyphs.js`或`fontgen`生成,它们将TrueType字体转换为Three.js可理解的格式。 让我们详细了解一下这个过程: 1. **字体转换**:首先,你需要一个支持中文的TrueType字体,例如方宋...
本话题聚焦于“古诗内容提取json格式转jsonl”,这涉及到从JSON格式的数据中提取古诗内容,并将其转换为JSONL(JSON Lines)格式。下面我们将深入探讨这两个格式以及转换过程中的关键知识点。 首先,JSON...
jQuery提供了方便的方法来处理JSON数据,包括`$.getJSON()`和`$.ajax()`等函数,可以方便地从服务器获取JSON数据并将其转化为JavaScript对象,或者将JavaScript对象转换为JSON字符串发送到服务器。 **jQuery的get...
在VS(Visual Studio)环境下将JSON格式转换为TXT格式,主要涉及以下几个步骤: 1. **读取JSON文件**:首先,你需要打开VS并创建一个新的C#项目。然后,使用`System.IO`命名空间中的`StreamReader`或`File....
area.js,区域json文件,Vant-ui区域json文件