zoukankan      html  css  js  c++  java
  • mysql 实现 start with

    自己写service----> 传入map(idsql,rssql,prior)   idsql 查询id   rssql 查询结果集    调用 以下方法

    @param ids 要查询的起始 start with
    * @param allres 包含要递归数据的结果集 ( 查询时别名ID PID )
    * @param pos prior---> UP or DOWN
    * @return
    */
    public static List<Map<String, Object>> getTree(ArrayList<String> ids,
    List<Map<String, Object>> allres,String pos) {
    List<Map<String, Object>> res=new ArrayList<Map<String,Object>>();

    if("up".equals(pos)){
    res=toCreatTreeUp(ids,allres,res);
    }
    if("down".equals(pos)){
    res=toCreatTreeDown(ids,allres,res);
    }
    return res;
    }
    private static List<Map<String, Object>> toCreatTreeUp(ArrayList<String> ids,
    List<Map<String, Object>> allres,List<Map<String, Object>> res) {
    ArrayList<String> idss = new ArrayList<String>();
    for(String id :ids){
    for (Map<String, Object> map : allres) {
    if(id.equals(map.get("ID").toString())){
    idss.add(map.get("PID").toString());
    res.add(map);
    }
    }
    }
    if (idss.size()!=0) {
    ids = idss;
    res = toCreatTreeUp(ids,allres,res);
    }
    return res ;
    }
    private static List<Map<String, Object>> toCreatTreeDown(ArrayList<String> ids,
    List<Map<String, Object>> allres,List<Map<String, Object>> res) {
    ArrayList<String> idss = new ArrayList<String>();
    for(String id :ids){
    for (Map<String, Object> map : allres) {
    if(id.equals(map.get("ID").toString())){
    res.add(map);
    }
    if(id.equals(map.get("PID").toString())){
    idss.add(map.get("ID").toString());
    }
    }
    }
    if (idss.size()!=0) {
    ids = idss;
    res = toCreatTreeDown(ids,allres,res);
    }
    return res ;
    }

  • 相关阅读:
    求子数组最大和
    layout_weight layout_width = 0dp
    一些日历的实现
    只显示年月日的日历
    每日学习之0512
    git 出现The current branch is not configured for pull No value for key branch.master.merge found in configuration错误的解决办法
    git的配置
    使用Spring security框架实现登陆页面时跳转到favicon.ico问题
    播放视频(c#)
    太阳沉落了
  • 原文地址:https://www.cnblogs.com/sx2zx/p/6229260.html
Copyright © 2011-2022 走看看