1、数据库表结构
zone_code:地址编码
zone_name:地址名称
zong_type:地址级别
patent_code:父地址编码
zone_id:uuid
2、实体类
import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table; import org.hibernate.annotations.GenericGenerator; @Entity @Table(name="T_DRG_DICT_ZONE") public class Organization implements Serializable { private static final long serialVersionUID = -7796322324666598854L; @Id() @Column(name="ZONE_ID") @GenericGenerator(name = "uuidGenerator", strategy = "uuid") @GeneratedValue(generator = "uuidGenerator") private String zoneId; @Column(name="ZONE_CODE") private String zoneCode; @Column(name="ZONE_NAME") private String zoneName; @Column(name="ZONE_TYPE") private String zoneType; @Column(name="PARENT_CODE") private String parentCode; }
2、java逻辑处理
// 初始化TREE。
public void findByAll(BaseAbstractDto basedto) {
OrganizationDto dto = super.getExactlyDto(basedto);
// 调用对应的service查询某个实体的方法
List<Organization> organizations = new ArrayList<Organization>();
List<Organization> provinces = new ArrayList<Organization>();
List<Organization> citys = new ArrayList<Organization>();
List<Organization> countys = new ArrayList<Organization>();
List<Organization> towns = new ArrayList<Organization>();
// 加载Tree所有数据,按级别分成不同的list(可以在数据库中定义级别,然后排序,这样就不同在java中处理了)
organizations = organizationService.findProvinceByAll(null);
for (Organization organization : organizations) {
if ("Province".equals(organization.getZoneType())) {
provinces.add(organization);
}
if ("City".equals(organization.getZoneType())) {
citys.add(organization);
}
if ("County".equals(organization.getZoneType())) {
countys.add(organization);
}
if ("Town".equals(organization.getZoneType())) {
towns.add(organization);
}
}
//将各个级别的list合并成一个list,按照级别town->cotuntys->citys->privinces
List<Organization> zones = new ArrayList<Organization>();
for(Organization o : towns){
zones.add(o);
}
for(Organization o : countys){
zones.add(o);
}
for(Organization o : citys){
zones.add(o);
}
for(Organization o : provinces){
zones.add(o);
}
System.out.println(zones);
//循环list,找到自己的"父亲",并加入到"父亲"的sunList中
for(Organization sun : zones){
for(int i=0;i<zones.size();i++){
if(sun.getParentCode().equals( zones.get(i).getZoneCode() )){
zones.get(i).getSuns().add(sun);
continue;
}
}
}
//去掉无用数据,只返回根级别数据即可,也就是返回省的就可以了,其他的都在省的list中包含了
List<Organization> list = new ArrayList<Organization>();
for(Organization o : zones){
if ("Province".equals(o.getZoneType())) {
list.add(o);
}
}
dto.setOrganizations(list);
}
3、返回json数据
调用bootstrap-treeview数据加载方法就动态生成树
相关推荐
3. **动态插入节点**:接收到服务器返回的数据后,使用Bootstrap Treeview提供的API,如`addNode`或`reload`方法,将新数据动态插入到现有树结构中。 4. **缓存管理**:为了提高性能,可以考虑缓存已加载的节点数据...
这个压缩包文件jonmiles-bootstrap-treeview-542f57e包含了实现该功能所需的两个核心文件:`bootstrap-treeview.css`和`bootstrap-treeview.js`。 `bootstrap-treeview.css`是CSS样式表文件,负责定义Bootstrap ...
强烈建议初次使用bootstrap的人参考,例子很全...bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠
在“bootstrap-treeview”这个压缩包中,主要包含的就是实现这一功能所必要的JS和CSS文件。 1. **JS文件**:通常,这个JS文件是`treeview.js`,它包含了Bootstrap Treeview的核心逻辑。文件内包含了树形视图的初始...
bootstrap框架需要的js bootstrap-treeview.min.js
强烈建议初次使用bootstrap的人参考,例子很全...bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠
我们使用了 Bootstrap Treeview 的插件来生成 Treeview 结构,并使用 JavaScript 来动态加载数据。 快捷搜索功能 快捷搜索功能是本文的核心功能。我们使用了 jQuery 的 oninput 事件来监听搜索框的输入事件。当...
在本文中,我们将深入探讨 "bootstraptable-treeview",这是一个用于在 BootstrapTable 中实现树形结构的扩展。当我们处理树形数据时,正确地显示层次和缩进是非常重要的,因为它直接影响到用户对数据结构的理解和...
通过“bootstrap-treeview-demo”项目,我们可以学习如何实现动态的、无刷新的增删改功能,这对于构建交互式Web应用非常有用。这个项目不仅提供了直观的用户体验,还展示了前后端交互的最佳实践。
然后,在JavaScript部分,你需要加载“bootstrap-treeview.js”,并使用提供的API来构建和操作树形视图。这通常涉及创建一个数据结构来表示你的层次结构,每个节点通常包含一个标签(label)、标识符(id)和其他可...
bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠
bootstrap-treeview.js下载
使用 `bootstrap-treeview.js` 文件初始化树视图。调用 `$('#treeview').treeview(options)` 方法,其中 `#treeview` 是你的 HTML 元素的 ID,`options` 是可选的配置对象,可以设置如 `data`(节点数据)、`...
在这个“bootstrap-treeview-master”压缩包中,包含了完整的源代码和演示示例,帮助开发者更好地理解和应用这个组件。 Bootstrap Treeview 主要特性包括: 1. **可折叠/展开节点**:用户可以点击节点来展开或折叠...
为了动态加载后台数据,我们需要使用Ajax技术。Ajax允许我们在不刷新整个页面的情况下,向服务器发送异步请求并获取响应。在Bootstrap Treeview中,我们可以使用jQuery的`$.ajax`方法来实现这个功能。首先,定义一个...
4. **数据绑定**:Treeview 可以与 JSON 或其他数据格式进行绑定,动态加载和更新树形结构。这在数据量较大或者需要实时更新的场景下非常有用。 5. **API 控制**:提供了一套 API 接口,如 `expandAll()`、`...
Bootstrap Treeview是一款基于jQuery和Bootstrap库的插件,它提供了美观且功能丰富的树形视图。这个特定的压缩包文件包含了一个实现可搜索下拉树形功能的示例,这在许多Web应用中非常有用,比如用于导航菜单、组织...
这些文件通常包括Bootstrap的核心库、jQuery、bootstrap-table主文件,以及bootstrap-table-editable.js。确保这些资源被正确地链接或导入到HTML文档的`<head>`部分,以便在页面加载时可以正常使用。 以下是一个...
Bootstrap TreeView是一款基于Bootstrap框架的可扩展的树形视图组件,它允许用户以美观、交互的方式展示层次结构的数据。在“bootstrap TreeView全选单选,定位选触发事件实例”中,我们将深入探讨如何实现这个组件...
使用bootstrap-table实现后台分页 插件资源点击此处本站下载。 引用以下css <link rel="stylesheet" href="../plugins/bootstrap/css/bootstrap.min.css" rel="external nofollow" > <link rel=...