使用spring mvc 注解 异步加载一棵树

jsp:

<ul id="orgInfoTree"></ul>   
    $(function(){
loadOrgTree();
}); function loadOrgTree(){
$('#orgInfoTree').tree({
checkbox: true,
lines:true,
url: '<%=request.getContextPath()%>/FNCG_PD_QRY/loadOrgTree', 这是第一次加载树的url 加载根节点
onBeforeExpand:function(node){
$("#orgInfoTree").tree('options').url='<%=request.getContextPath()%>/FNCG_PD_QRY/loadOrgChildrenTree?FID='+node.id; 这是点击根节点的时候发送请求去加载子节点
},
onClick:function(node){
$("#orgInfoTree").tree('options').url='<%=request.getContextPath()%>/FNCG_PD_QRY/loadOrgChildrenTree?FID='+node.id;
}
});
}

java代码部分

  controller部分: 

    @RequestMapping("/loadOrgTree")
@ResponseBody
public String loadOrgTree(){
List<OrgTree> OTList = fncg_PD_QRY_Service.loadOrgTree();
StringBuffer sb = new StringBuffer();
sb.append("[");
for (OrgTree orgTree : OTList) {
sb.append("{\"id\":" + orgTree.getORGN_CODE() + " ,\"text\":" + "\""
+ orgTree.getORGN_NAME() + "\"" + " ,\"state\":"
+ " \"closed\" " + " ,\"attributes\":" + "\""
+ orgTree.getORGN_LVL() + "\"" + "},");
}
sb.deleteCharAt(sb.length() - );
sb.append("]");
return sb.toString();
} @RequestMapping("/loadOrgChildrenTree")
@ResponseBody
public String loadOrgChildrenTree(String FID){
List<OrgTree> OTList = fncg_PD_QRY_Service.loadOrgChildrenTree(FID);
StringBuffer sb = new StringBuffer();
sb.append("[");
for (OrgTree orgTree : OTList) {
sb.append("{\"id\":" + orgTree.getORGN_CODE() + " ,\"text\":" + "\""
+ orgTree.getORGN_NAME() + "\"" + " ,\"state\":"
+ " \"closed\" " + " ,\"attributes\":" + "\""
+ orgTree.getORGN_LVL() + "\"" + "},");
}
sb.deleteCharAt(sb.length() - );
sb.append("]");
return sb.toString();
}

  service部分:

    public List<OrgTree> loadOrgTree(){
return fncg_PD_QRY_Dao.loadOrgTree();
} public List<OrgTree> loadOrgChildrenTree(String FID){
return fncg_PD_QRY_Dao.loadOrgChildrenTree(FID);
}

  

  dao部分:

    public List<OrgTree> loadOrgTree();

    public List<OrgTree> loadOrgChildrenTree(@Param("FID") String FID);

  

  xml,接口对应的sql部分

    <select id="loadOrgTree" resultMap="com.cvicin.products.productManage.fngg.mapper.poRes.OrgTree">
SELECT B.ID AS ID,B.ORGN_CODE AS ORGN_CODE,B.F_ORGN_ID AS F_ORGN_ID,B.ORGN_NAME AS ORGN_NAME,B.ORGN_LVL AS ORGN_LVL FROM ORGN_BASIC B WHERE B.ORGN_LVL = (SELECT min(A.ORGN_LVL) FROM ORGN_BASIC A)
</select> <select id="loadOrgChildrenTree" parameterType="java.lang.String" resultMap="com.cvicin.products.productManage.fngg.mapper.poRes.OrgTree">
SELECT B.ID AS ID,B.ORGN_CODE AS ORGN_CODE,B.F_ORGN_ID AS F_ORGN_ID,B.ORGN_NAME AS ORGN_NAME,B.ORGN_LVL AS ORGN_LVL FROM ORGN_BASIC B WHERE B.F_ORGN_ID = #{FID,jdbcType=VARCHAR}
</select>

javaBean和对应的xml:

public class OrgTree extends BasePO{

    private int ID;
private String ORGN_CODE;
private String F_ORGN_ID;
private String ORGN_NAME;
private String ORGN_LVL; public int getID() {
return ID;
}
public void setID(int iD) {
ID = iD;
}
public String getORGN_CODE() {
return ORGN_CODE;
}
public void setORGN_CODE(String oRGN_CODE) {
ORGN_CODE = oRGN_CODE;
}
public String getF_ORGN_ID() {
return F_ORGN_ID;
}
public void setF_ORGN_ID(String f_ORGN_ID) {
F_ORGN_ID = f_ORGN_ID;
}
public String getORGN_NAME() {
return ORGN_NAME;
}
public void setORGN_NAME(String oRGN_NAME) {
ORGN_NAME = oRGN_NAME;
}
public String getORGN_LVL() {
return ORGN_LVL;
}
public void setORGN_LVL(String oRGN_LVL) {
ORGN_LVL = oRGN_LVL;
} }
    <resultMap id="OrgTree" type="com.cvicin.products.productManage.OrgTree">
<result property="ID" column="ID" />
<result property="ORGN_CODE" column="ORGN_CODE" />
<result property="F_ORGN_ID" column="F_ORGN_ID" />
<result property="ORGN_NAME" column="ORGN_NAME" />
<result property="ORGN_LVL" column="ORGN_LVL" />
</resultMap>

一颗无刷新的,异步加载的tree

spring mvc easyui tree 异步加载树的更多相关文章

  1. jquery easyui tree异步加载子节点

    easyui中的树可以从标记中建立,也可以通过指定一个URL属性读取数据建立.如果想建立一棵异步树,需要为每个节点指定一个id属性值,这样在加载数据时会自动向后台传递id参数. <ul id=& ...

  2. MVC4中EasyUI Tree异步加载JSON数据生成树

      1,首先构造tree接受的格式化数据结构MODEL /// <summary> /// 定义EasyUI树的相关数据,方便控制器生成Json数据进行传递 /// </summar ...

  3. ztree异步加载树节点

    参考文档:https://www.cnblogs.com/tenWood/p/8620708.html ztree api地址:http://www.treejs.cn/v3/api.php 说明:j ...

  4. Jquery Ztree异步加载树

    1. 下载jquery的JS文件/ztree的CSS文件和JS文件 https://jquery.com/download/ https://gitee.com/zTree/zTree_v3/tree ...

  5. easyui datagrid 异步加载数据时滚动条有时会自动滚到最底部的问题

    在使用easyui 的datagrid异步加载数据时发现滚动条有时会自动滚到最底部.经测试发现,如果加载数据前没有选中行则不会出现这个问题.这样我们可以在重新异步加载数据前取消选中行就可以避免这个问题 ...

  6. bootstrap异步加载树后样式显示问题

    整个过程: 1.先加载整个页面 2.通过jquery异步请求后台返回数据 3.循环遍历数据,拼接需要的内容 4.把拼接好的数据加载到页面中. 问题: 把拼接好的内容加载到页面后,样式显示不正确.而如果 ...

  7. EasyUI实现异步加载tree(整合Struts2)

    首先jsp页面有一ul用于展现Tree <ul id="mytree"></ul> 加载Tree <script type="text/ja ...

  8. ContextLoaderListener和Spring MVC中的DispatcherServlet加载内容的区别

    一:ContextLoaderListener加载内容 二:DispatcherServlt加载内容 ContextLoaderListener和DispatcherServlet都会在Web容器启动 ...

  9. ContextLoaderListener和Spring MVC中的DispatcherServlet加载内容的区别【转】

    原文地址:https://blog.csdn.net/py_xin/article/details/52052627 ContextLoaderListener和DispatcherServlet都会 ...

随机推荐

  1. HDOJ(HDU) 4847 Wow! Such Doge!(doge字符统计)

    Problem Description Chen, Adrian (November 7, 2013). "Doge Is An Ac- tually Good Internet Meme. ...

  2. Longest Consecutive Sequence hashset

    public class Solution { public int longestConsecutive(int[] num) { HashSet<Integer> hash=new H ...

  3. 排序Tip

    排序算法   所有排序算法汇总:http://en.wikipedia.org/wiki/Sort_algorithm counting sort 资料 :http://www.cs.miami.ed ...

  4. octopress的一些总结

    1.编辑_config.yml 的description时,不能使用tab键 2.修改主题‘MediumFox’  description 和 文章展示的宽度,修改文件home_landing_row ...

  5. lightoj1051 Good and Bad (dp)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1051 题目大意:给你一个字符串,只包含大写字母和‘?’,如果字符串中出现了连续三个以上 ...

  6. MySQL基本配置

    >>添加环境变量 把MySQL Server的bin目录添加到系统path中. >>MySQL启动和停止命令 net start mysql56 net stop mysql5 ...

  7. DateADD日期Sql

    --1.  当前系统日期.时间 select getdate() --2015-01-06 09:27:27.277   --2.时间操作 dateadd  在向指定日期加上一段时间的基础上,返回新的 ...

  8. c++重点知识点

    - const加强 在变量前加const,说明变量是常量只读属性.假如用指针去修改const常量会用什么结果.上例子: //a 是一个只读的常量,按照理论应该不能被修改 ;//内存中为a分配地址,赋值 ...

  9. SQL ID自增列从1开始重新排序 分类: SQL Server 2014-05-19 14:46 652人阅读 评论(0) 收藏

    数据库中把ID自增长重置成1: 一般做法:(太麻烦) 复制表数据->删除原表.新建一张表->粘贴: 新方法: 数据库中:新建查询->复制.粘贴一下代码->修改表名,执行即可(先 ...

  10. Sencha Touch 的基础知识

    基础知识 一.要注意书写,一个字母就会让你代码跑不起来Ext.setup({ icon:'icon.png', glossOnIcon:false, tabletStartupScreen:'talb ...