`
j救赎
  • 浏览: 8598 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

bootstrap-treeview后台动态生成目录树数据

    博客分类:
  • java
 
阅读更多

 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数据加载方法就动态生成树

 

 

  • 大小: 108.9 KB
  • 大小: 47.3 KB
分享到:
评论

相关推荐

    bootstrap-treeview树节点实现动态加载(懒加载)

    3. **动态插入节点**:接收到服务器返回的数据后,使用Bootstrap Treeview提供的API,如`addNode`或`reload`方法,将新数据动态插入到现有树结构中。 4. **缓存管理**:为了提高性能,可以考虑缓存已加载的节点数据...

    bootstrap-treeview压缩包文件

    这个压缩包文件jonmiles-bootstrap-treeview-542f57e包含了实现该功能所需的两个核心文件:`bootstrap-treeview.css`和`bootstrap-treeview.js`。 `bootstrap-treeview.css`是CSS样式表文件,负责定义Bootstrap ...

    bootstrap树 bootstrap-treeview完整例子

    强烈建议初次使用bootstrap的人参考,例子很全...bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠

    bootstrap-treeview下载

    在“bootstrap-treeview”这个压缩包中,主要包含的就是实现这一功能所必要的JS和CSS文件。 1. **JS文件**:通常,这个JS文件是`treeview.js`,它包含了Bootstrap Treeview的核心逻辑。文件内包含了树形视图的初始...

    bootstrap-treeview.min.js

    bootstrap框架需要的js bootstrap-treeview.min.js

    bootstrap-treeview史上最强例子

    强烈建议初次使用bootstrap的人参考,例子很全...bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠

    Bootstrap treeview实现动态加载数据并添加快捷搜索功能

    我们使用了 Bootstrap Treeview 的插件来生成 Treeview 结构,并使用 JavaScript 来动态加载数据。 快捷搜索功能 快捷搜索功能是本文的核心功能。我们使用了 jQuery 的 oninput 事件来监听搜索框的输入事件。当...

    bootstraptable-treeview树形,树形空格缩进bug已解决

    在本文中,我们将深入探讨 "bootstraptable-treeview",这是一个用于在 BootstrapTable 中实现树形结构的扩展。当我们处理树形数据时,正确地显示层次和缩进是非常重要的,因为它直接影响到用户对数据结构的理解和...

    bootstrap-treeview-demo增删改无刷新

    通过“bootstrap-treeview-demo”项目,我们可以学习如何实现动态的、无刷新的增删改功能,这对于构建交互式Web应用非常有用。这个项目不仅提供了直观的用户体验,还展示了前后端交互的最佳实践。

    bootstrap-treeview.zip

    然后,在JavaScript部分,你需要加载“bootstrap-treeview.js”,并使用提供的API来构建和操作树形视图。这通常涉及创建一个数据结构来表示你的层次结构,每个节点通常包含一个标签(label)、标识符(id)和其他可...

    bootstrap-treeview源码

    bootstrap树控件使用bootstrap-treeview.js实现树前边多选框checkbox 并实现, 0、获取选中的项 1、点击父级的多选框,自己默认选中 2、全选 3、反选 4、展开、 5、折叠

    bootstrap-treeview

    bootstrap-treeview.js下载

    bootstrap-treeview-deom

    使用 `bootstrap-treeview.js` 文件初始化树视图。调用 `$('#treeview').treeview(options)` 方法,其中 `#treeview` 是你的 HTML 元素的 ID,`options` 是可选的配置对象,可以设置如 `data`(节点数据)、`...

    bootstrap-treeview-master 完整源码和demo

    在这个“bootstrap-treeview-master”压缩包中,包含了完整的源代码和演示示例,帮助开发者更好地理解和应用这个组件。 Bootstrap Treeview 主要特性包括: 1. **可折叠/展开节点**:用户可以点击节点来展开或折叠...

    bootstrap-treeview动态加载后台数据菜单

    为了动态加载后台数据,我们需要使用Ajax技术。Ajax允许我们在不刷新整个页面的情况下,向服务器发送异步请求并获取响应。在Bootstrap Treeview中,我们可以使用jQuery的`$.ajax`方法来实现这个功能。首先,定义一个...

    bootstrap-treeview demo

    4. **数据绑定**:Treeview 可以与 JSON 或其他数据格式进行绑定,动态加载和更新树形结构。这在数据量较大或者需要实时更新的场景下非常有用。 5. **API 控制**:提供了一套 API 接口,如 `expandAll()`、`...

    bootstrap treeview可搜索下拉树形

    Bootstrap Treeview是一款基于jQuery和Bootstrap库的插件,它提供了美观且功能丰富的树形视图。这个特定的压缩包文件包含了一个实现可搜索下拉树形功能的示例,这在许多Web应用中非常有用,比如用于导航菜单、组织...

    bootstrap-table可编辑下拉框editable js及css及bootstrap-table-editable.js以及使用实例

    这些文件通常包括Bootstrap的核心库、jQuery、bootstrap-table主文件,以及bootstrap-table-editable.js。确保这些资源被正确地链接或导入到HTML文档的`&lt;head&gt;`部分,以便在页面加载时可以正常使用。 以下是一个...

    bootstrap TreeView全选单选,定位选触发事件实例

    Bootstrap TreeView是一款基于Bootstrap框架的可扩展的树形视图组件,它允许用户以美观、交互的方式展示层次结构的数据。在“bootstrap TreeView全选单选,定位选触发事件实例”中,我们将深入探讨如何实现这个组件...

    bootstrap-table后端分页功能完整实例

    使用bootstrap-table实现后台分页 插件资源点击此处本站下载。 引用以下css &lt;link rel="stylesheet" href="../plugins/bootstrap/css/bootstrap.min.css" rel="external nofollow" &gt; &lt;link rel=...

Global site tag (gtag.js) - Google Analytics