一、本次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. CF memsql Start[c]UP 2.0 A

    CF memsql Start[c]UP 2.0 A A. Golden System time limit per test 1 second memory limit per test 256 m ...

  2. PHP变量入门教程(2)超全局变量,总共9个

    PHP 超全局变量 $GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量.该数组的键标为全局变量的 名称.从 PHP 3 开始存在 $GLOBALS 数组. $_SERVER 变量由 ...

  3. Python转码问题的解决方法:UnicodeDecodeError:‘gbk' codec can't decode bytes in position

    在开发过程中遇到了错误:UnicodeDecodeError: ‘gbk' codec can't decode bytes in position 678-679...这是因为遇到了非法字符, 解决 ...

  4. MySQL SQL Mode及相关问题

    MySQL可以运行于不同的SQLMode下,Mode定义了MySQL应支持的SQL语法.数据校验等. 一.Mode会影响到日期类型.字符串类型等的插入操作.其中多种模式影响了对某些特殊字符如何理解的问 ...

  5. mysql取前取后

    SELECT * FROM (SELECT * FROM 表 WHERE id<居中的ID ORDER BY id DESC LIMIT 5) as A UNION all SELECT * F ...

  6. git 教程(13)--创建与合并分支

    在版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支.HEAD严格来说不是指向提交,而 ...

  7. Oracle分析函数(一)

    一.总体介绍 分析函数如何工作 语法 FUNCTION_NAME(<参数>,…) OVER (<PARTITION BY 表达式,…> <ORDER BY 表达式 < ...

  8. js函数中this的不同含义

    1.js函数调用过程中,js线程会进入新的执行环境并创建该环境的变量对象,并添加两个变量:this和arguments,因此可以在函数中使用这两个变量.需要注意的是,this变量不能重新赋值,而arg ...

  9. mac os x 启用apache 和 php

    Mac OS X 是自带 Apache 和 PHP 的,但默认情况下并没有开启,此文说明如何启用这两个服务,环境基于 Mac OS X 10.6 Snow Leopard. 启动 Apache 命令行 ...

  10. Linux find 用法示例

    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数 ...