zoukankan      html  css  js  c++  java
  • 2020软件工程作业05

    软件工程 17级计科一班
    作业要求 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10619
    作业目标 需要在网页页面上呈现树形结构形式的师门树
    作业正文 如下
    参考文献 http://www.treejs.cn/v3/api.php
    https://www.cnblogs.com/xing901022/p/4787625.html

    结对信息

    朱旭炜20177596:https://www.cnblogs.com/RCJames/

    刘涛20177569:https://www.cnblogs.com/liutaodashuaige/

    Github仓库:https://github.com/zxw0621/20177596-20177569

    具体分工

    朱旭炜:负责前端编写,Ajax和servlet,编写博客园博文

    刘涛:负责后台JavaBean的编写

    PSP表格

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 60 90
    Estimate 估计这个任务需要多少时间 600 1200
    Development 开发 300 200
    Analysis 需求分析 (包括学习新技术) 30 20
    Design Spec 生成设计文档 30 30
    Design Review 设计复审 60 30
    Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 20
    Design 具体设计 30 30
    Coding 具体编码 60 60
    Code Review 代码复审 60 20
    Test 测试(自我测试,修改代码,提交修改) 30 10
    Reporting 报告 20 20
    Test Repor 测试报告 20 20
    Size Measurement 计算工作量 20 20
    Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 30
    合计 1380 1730

    解题思路&设计实现

    • 流程图

      lc
    • public List jiexi(String wb){
              List<HashMap<String, Object>> shu = new ArrayList<HashMap<String, Object>>();
              //分解为单行
              String[] fenlei = wb.split("
      ");
              for (int i=1;i<=fenlei.length;i++){
                  //分解父节点和子节点
                  String[] jiedian = fenlei[i-1].split(":");
                  if(jiedian[0].equals("导师")){//当检索到导师字段时
                      HashMap<String,Object> jd = new HashMap<String,Object>();
                      jd.put("id",i);
                      jd.put("pId",0);
                      jd.put("name","导师");
      
                      shu.add(jd);
                      //导师子节点
                      HashMap<String,Object> jd1 = new HashMap<String,Object>();
                      jd1.put("id",i*10);
                      jd1.put("pId",1);
                      jd1.put("name",jiedian[1]);
      
                      shu.add(jd1);
                  }else{//类别目录
                      HashMap<String,Object> jd = new HashMap<String,Object>();
                      jd.put("id",i);
                      jd.put("pId",1);
                      jd.put("name",jiedian[0]);
      
                      shu.add(jd);
                      //分解所有子节点
                      String[] xjd = jiedian[1].split("、");
      
                      for (int j=0;j<=xjd.length-1;j++){//学生目录
                          HashMap<String,Object> xs = new HashMap<String,Object>();
                          xs.put("id",i*10+j);
                          xs.put("pId",i);
                          xs.put("name",xjd[j]);
      
                          shu.add(xs);
                      }
      
                  }
              }
              return shu;
          }
      

    遇到的困难及解决方法

    1. textarea标签中换行符是如何保存

      解决:在浏览器的开发者工具查看textarea的取值,换行符不保存,而保存了一些空格

    2. JSON如何从servlet返回给前端处理

      解决:导入fastjson包,用JSON.toJSONString转成json字符串,在前端用eval方法再把json字符串转json对象

    评价队友

    @波兰杜兰特:在结对过程中,十分曲折,困难重重,但是通过我们共同学习和协作,完成了一个十分简陋的版本,对JSON和zTree的使用还要进一步的学习,我们在结对时,一有问题或者想法就会马上连线沟通,培养默契,提高了我们完成作业的效率,这种结对编程的方式让我们获益匪浅,共同进步。

    @不负真人:在本次的软件工程作业的完成过程中,我与朱旭炜同学再次亲密合作,有了上次结对编程的经验,这次结对编程我更加深刻的体会到了结对编程的优点,加强了和朱旭炜同学的沟通交流,加快了我们合作工作的效率,同时,在对家族书功能的实现中,我负责后台代码部分,这使我对于构建代码过程中的分工有了清晰的认识,收获颇丰!

    结对图片

    QQ截图20200415160949

    效果图

    QQ图片20200417094907
  • 相关阅读:
    SVN更新及如何解决冲突文件
    Eclipse如何删除多建的Tomcat服务器
    linux查看硬件配置命令
    【项目经验】navicat工具 SQLServer数据库迁移MySQL
    Oracle 中的 时间运算
    1001 数组中和等于K的数对
    1004 n^n的末位数字
    1182 完美字符串
    1283 最小周长
    1284 2 3 5 7的倍数
  • 原文地址:https://www.cnblogs.com/liutaodashuaige/p/12717942.html
Copyright © 2011-2022 走看看