【Alpha】Daily Scrum Meeting第七次
一、本次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第七次的更多相关文章
- 【Beta】Daily Scrum Meeting第七次
1.任务进度 学号 已完成 接下去要做 502 发布任务到服务器 测试 509 将各api的处理逻辑放到类里面 让主api调用这些类 517 删除任务和教师的控件及逻辑 提交报课审核信息 530 完善 ...
- 一、Daily Scrum Meeting【Alpha】------Clover
[Alpha]Daily Scrum Meeting 第一次 [Alpha]Daily Scrum Meeting 第二次 [Alpha]Daily Scrum Meeting 第三次 [Alpha] ...
- Daily Scrum Meeting 汇总
Alpha Daily Scrum Meeting --FirstDay(11.8) Daily Scrum Meeting --SecondDay(11.9) Daily Scrum Meeting ...
- 【Alpha】Daily Scrum Meeting第十次
一.本次Daily Scrum Meeting主要内容 每个人学习情况 测试的任务的安排 Alpha版本展示的具体内容 二.任务安排 学号尾数 昨天做的任务 今天做的任务 任务用时 612 完成将计时 ...
- 【Alpha】Daily Scrum Meeting第三次
本次随笔调换了展示顺序,把重要的内容放前面. 一.本次Daily Scrum Meeting主要内容 说明要完成alpha版本还需要哪些功能 对这些功能进行分析和实现方式的讨论 强调编码规范和变量命名 ...
- 【Alpha】Daily Scrum Meeting第四次
之前没领悟到Daily Scrum Meeting的精髓,认为要做出些东西才敢拿出来. 在范老师提醒我们保持有节奏的迭代后,我们意识到之前的想法是不符合Daily Scrum Meeting的思想的. ...
- 【Alpha】Daily Scrum Meeting第六次
一.本次Daily Scrum Meeting主要内容 各队员的任务完成情况 接下去要做的任务有哪些方面的问题 二.项目进展 学号尾数 今日已完成任务 接下去要做 502 统一Excel表头数据的英文 ...
- 【Beta】 第七次Daily Scrum Meeting
第七次meeting会议 [Beta] 第七次Daily Scrum Meeting 一.本次会议为第七次meeting会议 二.时间:10:00AM-10:20AM 地点:禹州楼 三.会议站立式照片 ...
- Alpha阶段scrum meeting七天冲刺博客-天冷记得穿秋裤队
Alpha阶段scrum meeting七天冲刺博客 day url 第一天 https://www.cnblogs.com/laomiXD/articles/9874052.html 第二天 htt ...
随机推荐
- Anynote 基于ExtJS多用户个人信息管理系统
Anynote——个人信息管理系统 —–主要用于学习交流—– 源码下载:https://git.oschina.net/xiyt/Anynote.git 一.系统说明 Anynote是一个基于extj ...
- Node.js Stream - 实战篇
邹斌 ·2016-07-22 11:04 背景 前面两篇(基础篇和进阶篇)主要介绍流的基本用法和原理,本篇从应用的角度,介绍如何使用管道进行程序设计,主要内容包括: 管道的概念 Browserify的 ...
- ORACLE 触发器
•1.1 触发器类型 • DML触发器 • 替代触发器 • 系统触发器 •1.2 创建触发器 • 触发器触发次序 • 创建DML触发器 • 创建替代(INSTEAD OF)触发器 • 创建系统事件触发 ...
- 《征服 C 指针》摘录6:解读 C 的声明
一.混乱的声明——如何自然地理解 C 的声明? 通常,C 的声明 int hoge; 这样,使用“类型 变量名;”的形式进行书写. 可是,像“指向 int 的指针”类型的变量,却要像下面这样进行声明: ...
- Segment set
题目大意: 在一个平面上,给定N根线段,若某条线段与另一条线段相交,则将它们归于同个集合,给定k,问第k条线段所在的集合中线段的数量. 题目分析: 问题主要考察计算几何和并查集. 首先我们要判断两条线 ...
- r-cnn学习(五):SmoothL1LossLayer论文与代码的结合理解
A Loss Function for Learning Region Proposals 训练RPN时,只对两种anchor给予正标签:和gt_box有着最高的IoU && IoU超 ...
- debug [LTS]
0613 A. 复制代码的时候忘了后续的对称的修改. 统计答案时出现了一些不可理喻的低级失误. B. 在0-indexed的程序中访问第一个元素使用了Arr[1]. Matrix-tree为mat[d ...
- screen 常用命令
screen -r <id | name> # 进入 screen C-a c # ctrl+a + c , 新建screen窗口 C-a A # ctrl+a + A, 命名scree ...
- Odd Even Linked List
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note her ...
- go:匿名函数与闭包
一.匿名函数 定义:没有函数名的函数. 作用:在go语言中目前了解的作用就是用于构成闭包. *注:由于javascript不存在块级作用域,故匿名函数常用来包含代码以不污染全局命名空间,运行后销毁环境 ...