一、本次Daily Scrum Meeting主要内容

  • 各队员的任务完成情况
  • 文件选择器布局只是暂时使用,后期会改方式,放在后面解决。
  • 接下去都要做什么

二、项目进展

学号尾数 今日已完成任务 接下去要做
502 在手机端解析Json数据,并插入手机数据库 将数据库的数据转换成Json数据,并发送到服务器;在服务器上解析Json数据
509 解决生成数据库样例数据的类的BUG 写出服务器插入数据到数据库教师表的API
517 解决日期选择器BUG 绑定数据库的数据到界面:报课表显示界面及点击报课表后的弹窗;
530 绑定数据库的数据到界面:教师列表界面 绑定数据库的数据到界面:教师详情界面;根据选择的xls文件,导入到教师表

三、Burndown Chart

11/10补上正确的燃尽图:


四、遇到的困难

  • 在手机上解析Json数据,然后插入数据库碰到了问题(已解决)。因为我们数据库的操作是使用开源框架来完成的,而用这个框架插入数据到数据库的时候,要求数据是整个pojo类。因此解析服务器发过来的Json数据,就需要绑定到一个类上面。

    • 如果简单粗暴的调用set方法或者构造方法将Json数据放到一个pojo类里面,那么需要在解析Json数据的时候,逐个取出数据。这样就不能保证良好的扩展性,到时候数据库有改变,得改很多地方。而且代码会很冗余
    • 上网查资料,最终决定使用Gson来解析Json数据。当Json一次性包含了多个数据库行的时候,可以直接解析为List。只要在解析的时候,将pojo作为参数传入,它会自动将数据对应起来。这样得到的就是一个pojo的List。这样不仅具有良好的扩展性,而且代码简洁。在服务器数据库表结构改变的时候,只需要改pojo类里的内容,就既可以让本地数据库同时改变,又可以在解析Json的时候获得正确的结果。
  • 对于数据库的操作,碰到了问题(已解决)。因为是用开源框架来操作的,对pojo类的要求比较严格。这一点一开始没注意到,geter 和 seter 方法的名字在改动的时候没有那么在意,就没同步更新名称。这导致在插入数据库的时候,发生了错误,无法插入数据。试了各种方法,最后发现只要重置seter和geter就行了。(509同学简直要疯了,一整天空余时间没有复习过两天要考的科目,都耗在这上面(ಥ _ ಥ))

五、体会

509:

  • 框架能避免我们写一大堆自定义模块来实现我们要的东西,框架能节省我们不少的时间和精力,但前提是你要彻彻底底的学会如何使用框架,而学习也需要花比较多的时间,不过只要学会使用框架之后,将是终生的受益。但我觉得使用框架最大的缺点就是如果使用框架而出现错误,将很不好找出原因,毕竟我们并不了解框架的内部结构,只能通过一些经验和尝试去排除错误。

    • 这次编写本地数据库使用的是afinal框架,在编写之前也花了好些时间学习,但学完之后花了不到两小时就把本地数据库的类给写好了。本来以为没问题了,但在用数据库类写初始化数据库类时还是发现了严重的问题:有三个表的主键在不能插入表的情况下其它数据居然能插入表中,这然我很不知所措,因为文档上说将数据插入表时必须要有主键,不然无法插入。
    • 去查看用于创建数据表的实体类(afinal是通过实体类来创建表的),发现没什么错误。于是又拿之前哪来测试的实体类(经测验次实体类能正确插入数据)来对比,也没发现什么不同。后来又设想了好几种错误进行排查,比如将数据表的名字换成跟实体类的名字一样(结果发现还是没用),在排除了几乎所有可能错误的假设之后还是没发现错误在哪,最后在舍友提议下将实体类中的setter方法(用来插入数据和更新数据)从新编写,将方法名设置成和变量名一样,结果居然能将数据正确插入了。虽然不知道为什么要这样,但是解决了问题还是很激动,不过回想起来居然会错在这种令人想不到的地方(因为感觉方法名字并不会影响到什么),而花了那么多时间又很心累。想了想,以后要是自己有实力,能自己写的东西还是尽量不要再用框架的好。

【Alpha】Daily Scrum Meeting第七次的更多相关文章

  1. 【Beta】Daily Scrum Meeting第七次

    1.任务进度 学号 已完成 接下去要做 502 发布任务到服务器 测试 509 将各api的处理逻辑放到类里面 让主api调用这些类 517 删除任务和教师的控件及逻辑 提交报课审核信息 530 完善 ...

  2. 一、Daily Scrum Meeting【Alpha】------Clover

    [Alpha]Daily Scrum Meeting 第一次 [Alpha]Daily Scrum Meeting 第二次 [Alpha]Daily Scrum Meeting 第三次 [Alpha] ...

  3. Daily Scrum Meeting 汇总

    Alpha Daily Scrum Meeting --FirstDay(11.8) Daily Scrum Meeting --SecondDay(11.9) Daily Scrum Meeting ...

  4. 【Alpha】Daily Scrum Meeting第十次

    一.本次Daily Scrum Meeting主要内容 每个人学习情况 测试的任务的安排 Alpha版本展示的具体内容 二.任务安排 学号尾数 昨天做的任务 今天做的任务 任务用时 612 完成将计时 ...

  5. 【Alpha】Daily Scrum Meeting第三次

    本次随笔调换了展示顺序,把重要的内容放前面. 一.本次Daily Scrum Meeting主要内容 说明要完成alpha版本还需要哪些功能 对这些功能进行分析和实现方式的讨论 强调编码规范和变量命名 ...

  6. 【Alpha】Daily Scrum Meeting第四次

    之前没领悟到Daily Scrum Meeting的精髓,认为要做出些东西才敢拿出来. 在范老师提醒我们保持有节奏的迭代后,我们意识到之前的想法是不符合Daily Scrum Meeting的思想的. ...

  7. 【Alpha】Daily Scrum Meeting第六次

    一.本次Daily Scrum Meeting主要内容 各队员的任务完成情况 接下去要做的任务有哪些方面的问题 二.项目进展 学号尾数 今日已完成任务 接下去要做 502 统一Excel表头数据的英文 ...

  8. 【Beta】 第七次Daily Scrum Meeting

    第七次meeting会议 [Beta] 第七次Daily Scrum Meeting 一.本次会议为第七次meeting会议 二.时间:10:00AM-10:20AM 地点:禹州楼 三.会议站立式照片 ...

  9. Alpha阶段scrum meeting七天冲刺博客-天冷记得穿秋裤队

    Alpha阶段scrum meeting七天冲刺博客 day url 第一天 https://www.cnblogs.com/laomiXD/articles/9874052.html 第二天 htt ...

随机推荐

  1. 在Activity之间传递参数(三)——serializable和parcelable的区别

    传递值对象: 一.serializable实现:简单易用 serializable的迷人之处在于你只需要对某个类以及它的属性实现Serializable 接口即可.Serializable 接口是一种 ...

  2. 2015.5.2-2015.5.8 Tip jQuery ,前端组件库,inline-block元素间距等

    有忙于它事,故延迟了,但在坚持! 1.Tip jQuery   2.给span加display: inline-block; 怎样能对齐? 解决方法:vertical-align: bottom:   ...

  3. FusionCharts-堆栈图、xml格式、刷新数据、添加事件link、传参

    *起因* 本来想用Chart.js来搞图表的, 但是来了个新需求,想搞的华丽点,毕竟对Chart.js来说,实现有点难度, *做出的改变* 最终选择了FusionCharts, *难点* 网上关于Fu ...

  4. hadoop源码编译——2.5.0版本

    强迫症必治: WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using b ...

  5. Python 爬虫2

    import urllib.request import os import re import time 设置头文件 head={} head['User-Agent'] ='Mozilla/5.0 ...

  6. [Machine Learning & Algorithm] 随机森林(Random Forest)

    1 什么是随机森林? 作为新兴起的.高度灵活的一种机器学习算法,随机森林(Random Forest,简称RF)拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来 ...

  7. 如何取消 DiscuzX 帖子被系统自动隐?

    设置路径: 全局 -> 站点功能 -> 帖子阅读 -> 启用隐藏水帖,选择“否”

  8. C和指针 第六章 指针6.2 6.3字符串中查找的两个版本

    int find_char(char **strings, char ch) { char *string; while ((string = *strings++) != NULL) { while ...

  9. oracle查询以当前年份为准的近些年数据

    今天在工作中遇到了一个查询近几年数据的问题,oracle学的比较渣渣,学习了一下. 举个例子: 比如说员工入职,我想看这个公司的员工入职情况,然后做一个趋势统计表. 以当前年份为准,查看近5年的情况趋 ...

  10. oracle常用脚本

    自动启动oracle sqlplus -S sys/123456 as sysdba <<EOF startup quit EOF lsnrctl start lsnrctl reload