Skip to content

Latest commit

 

History

History
70 lines (63 loc) · 2.67 KB

2019年03月31日第2周周记.md

File metadata and controls

70 lines (63 loc) · 2.67 KB

#工作室考核第2周周记:2019年3月31日

生活随记

本周继续很忙

一周总结

本周主要学习内容:
  • 使用jsp编写项目
  • 学习和使用过滤器
  • 尝试使用bootstrap美化了jsp程序的界面
  • 补了一点html基础
  • 仔细读了阿里巴巴开发手册
  • 总结一周jsp开发经验
  • 顺序栈,链栈,四则运算表达式求值
  • 数据库设计三大范式
  • er图
  • javadoc
本周的主要收获:
  • cat工作室的项目已经完成
  • 本次小项目开发经验总结
  • 各层必须高度解耦,否则将来维护难度很大
  • 前后端分离,不要耦合
  • 数据库要使用preparestatement防止sql注入
  • 减少不必要的访问数据库,使用缓存
  • 重复代码要重构
  • 异常在逻辑层处理,向用户输出提示
  • 输入必须有限制,做必要的检查
  • 要结合前端需要的数据写后台dao
  • 代码注释要详细,包括解释功能,描述参数的规范
  • 注意数据库关键字不能冲突
  • 各层应面向接口编程,实现工厂模式
  • 画er图,分析各个功能模块,尽可能实现复用
  • 跟业务逻辑无关的放在工具类
  • 常量使用枚举,不要有“魔法值”
  • 先有需求分析,画好流程图,再用代码实现

存在问题

  • 分配在前端的精力偏多,应该专注后台技术
  • 代码分割需要改进,很多时候没有写注释
  • 写注释的能力需要提高,注释不够简洁清晰
  • 写代码前需求分析不够,只分析了数据模型,而没有将业务流程分析出来
  • java的基础还需要巩固,有些地方还是带着C语言的面向过程的思维,还没有完全实现思维的转换

解决的技术问题

周一

从List中取数据报空指针异常

错误:不正确的判空方式

if(list.get(0)!=null)

解决:应该先检查是否有对象

if(list.size()>0)

周二

周三

将student类的属性全部改为string类型,出现无法读取数据库的数据的问题,经过多轮测试,发现原因数据库没有讲旧数据进行转换,读取时数据不兼容,已解决

周四

错误使用过滤器,继承了sun公司的Filter类,而实际应该是实现Http的Filter接口

周五

使用过滤器报错,在重定向之后没有return,导致请求继续发送至servlet中导致错误

周六

在数据库中使用外键报错,原因是外键和本表对应列类型不同,一个是unsign,另一个没有设置,导致报错

下周规划

  • 好好改良代码风格,更注重代码质量而不是一味实现更多功能
  • 将更多精力放在后端技术上,把后台代码写得更规范