public JSONArray loadOasys() {
JSONArray root = new JSONArray(); //定义根的json数组
int i=0,j=0;
conn= super.getConnection();
conn1= super.getConnection(); //连接数据库
try {
stmt = conn.createStatement();
stmt1 = conn.createStatement(); //创造语句
String sql ="select * from oasystem";
result = stmt.executeQuery(sql);
while (result.next()) { //用双重循环 最外面的循环
if((result.getInt(2))==0) { //标记根节点
JSONObject json1 = new JSONObject(); //把第一层放入到json中
json1.put("id", result.getInt("id"))
.put("text", result.getString("text"))
.put("leaf", (result.getInt("leaf")==1 ? true :false));
result1 = stmt1.executeQuery(sql); //创造第二次的查询语句
JSONArray child= new JSONArray(); //把第二层放入到json数组中
while (result1.next()) { //进行第二次循环
if((result1.getInt(2)==result.getInt(1)) ) { //根据子节点对于的pid
JSONObject json2 = new JSONObject(); //用jsonObject去装子节点
json2.put("id", result1.getInt("id"))
.put("text", result1.getString("text"))
.put("leaf", (result1.getInt("leaf")==1 ? true :false));
child.put(i++, json2); //把子节点放入到jsonArray中
}
}
i=0;
json1.put("children", child); //把json数组放入到上一层的json数据中
root.put(j++,json1); //最终吧所以的每一个根节点放入到最后的根节点中
}
}
conn.close();
root.toJSONObject(root); //然后把jsonArray转换为jsonObject
return root; //返回一个jsonArray
} catch (SQLException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
}
终于把树状结构用json从数据库读出来了,大家还有更好的处理方法可以指出来,大家共同学习!
分享到:
相关推荐
Json4Ext是“AnyFo – Util”项目下的一个子项目,他提供了多个工具包,它让开发者轻松的通过构建一些简单的Java类,然后自动的将 这些Java类生成符合Ext要求的各种Json格式的字符串。 Json4Ext类简介 在Json4...
在EXT JS这个强大的JavaScript库中,树形组件...总的来说,EXT树的无限级JSON动态加载涉及数据结构、JSON格式、数据存储以及异步加载等多个方面,理解并熟练运用这些技术,能够帮助我们构建更加高效和灵活的树形界面。
EXT框架,作为一个强大的前端组件库,提供了丰富的UI控件,其中包括树形组件(EXT树),它能够根据JSON数据生成交互式的树状结构。 EXT树是EXT JS库中的一个组件,用于展示层级关系的数据,比如目录结构、组织架构...
它可以配置为从JSON数据源加载数据,使用`proxy`配置项来指定数据源类型,如`Ext.data.proxy.JsonP`或`Ext.data.proxy.Ajax`,这两者都支持JSON格式。 2. **Ext.data.reader.Json**:当Store与JSON数据源交互时,会...
在EXT-JS和JSON应用中,SQL脚本通常用于服务器端,处理数据的增删改查操作,并将结果转换为JSON格式供EXT-JS Grid使用。 在实际项目中,服务器端可能会使用PHP、Java、Node.js等语言处理SQL查询并返回JSON数据。...
对于JSON格式,通常使用`Ext.data.reader.Json`,设置`rootProperty`来指定JSON对象中的数据数组位置。 4. **加载数据**:一旦数据存储配置完成,可以调用`load()`方法从服务器加载JSON数据。EXT会自动将JSON数据...
标题中的“符合Ext tree的全国城市列表json格式”指的是使用Ext JS库构建的树形结构数据,这种数据格式常用于展示具有层级关系的数据,如行政区域划分。Ext JS是一个强大的JavaScript框架,它提供了丰富的组件库,...
本文将以SSH(Struts2 + Spring + Hibernate)框架结合EXT框架为例,详细介绍如何通过SSH框架将数据转化为JSON格式并传递给EXT前端。 #### 二、环境配置 在开始之前,我们需要确保项目中已经正确配置了SSH框架的...
在IT领域,这个标题涉及到的是一个使用EXT JS(一种基于JavaScript的富客户端框架)和JSON(JavaScript Object Notation)数据格式,结合SQL Server数据库实现分页功能的示例。EXT JS允许开发者创建复杂的、交互式的...
JSON是一种轻量级的数据交换格式,广泛应用于服务器向客户端传递数据。 首先,我们从最基础的HTML(HyperText Markup Language)开始。HTML标签是构建网页的基本元素,用于定义页面结构和内容。展示JSON数据时,...
2、ext4,这个项目是用来做ext的公共js库用的,这样不比没个项目都添加ext的js文件,方便开发。 切记将ext4项目部署上去,并且应用名称为ext4,否则访问fes项目是会找不到ext的js文件。 jxcia.sql是数据库脚本,...
`Ext.tree.TreeLoader`是Ext JS库中的一个组件,它负责加载和解析树形结构的数据,而JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,非常适合于在服务器和客户端之间传输数据。我们将通过实例...
总结一下,EXT JS Tree与JSON的结合使得开发者能够创建交互性强、数据动态更新的树状视图。通过理解EXT JS Tree的相关配置和JSON数据的解析,我们可以实现拖放功能、动态加载数据以及处理拖放事件,从而提升用户体验...
标签"Ext框架结构"和"Ext目录结构"分别对应了框架的逻辑结构和物理结构。逻辑结构是指类和对象的组织方式,而目录结构则是指源代码在硬盘上的文件和目录布局。在Ext框架中,源码通常按照模块进行划分,比如`ext-all....
这个框架的核心组件包括Ext4 JavaScript库、JSON数据交换格式、Servlet或Struts2作为后端控制器以及Ext JS中的两种UI组件:Tree Panel和Tab Panel。以下将详细介绍这些技术及其在Web应用中的作用。 1. Ext4:Ext JS...
在给定的标题"JSON.rar_JSON Hibernate_extjs_json struts ext_jsp json extjs_str"中,我们可以看出这是一个与JSON相关的项目,可能包含了使用JSON进行数据交换的各种技术集成。JSON在这里可能是作为前后端数据传输...
JSON 作为数据交换格式,可以方便地在后端(如 Struts 控制器)与前端(EXT UI)之间传递数据。 Struts 框架的工作原理是接收用户的请求,通过 Action 对象处理业务逻辑,然后通过结果映射(Result Mapping)将数据...
在"Ext 根据数据库返回json动态生成grid列表实例"中,我们学习了如何使用ExtJS创建一个动态的Grid,它的列和数据都依赖于服务器返回的JSON数据。这个过程包括了Grid的基本配置、数据存储的设定以及如何处理和解析...
二、xmltools_2.3.2_r908_unicode_beta4.zip 是 xml格式化插件 解压后 XMLTools.dll 放入notepad++安装目录>> plugins文件夹下 里面的ext_libs的文件放入 notepad++ 安装根目录 三、 NPPJSONViewer1_21.zip 是json...
Ext Tree JSON Demo是一个基于ExtJS库实现的异步加载树形结构的示例项目。ExtJS是一个强大的JavaScript UI框架,广泛用于构建富客户端应用程序。在本项目中,它被用来展示如何利用JSON数据来动态加载树节点,提高...