/HUST-Java-Experiments

HUST JAVA experiments in Spring 2019. 华中科技大学Java实验

Primary LanguageJava

HUST-Java-Experiments

Hust J experiment in Spring 2019. 华中科技大学Java实验

基础设计基于@husixu1的repo: HUST-Homeworks/JavaExperiment/,在外观和功能上进行了迭代

功能

原版:

  • 病人基础挂号
  • 医生查看挂号和收入信息
  • 病人挂号多选框支持拼音、前缀匹配
  • 医生界面表格支持时间筛选

增加:

  • 病人多选框支持子序列匹配(e.g: “华中大”可匹配“华中科技大学”)
  • 医生界面表格数据获取异步加载。(2300条数据从服务器端拿下来的时间测试800ms+)
  • 支持病人注册
  • 数据库修改pid为int with zero fill,从而可以使用自增锁,避免pid申请重复
  • 对隔日挂号单价格冲突时间使用事务回滚来预防
  • 医生界面可以查看收入、挂号次数统计图,横轴可在年月周日等跨度自由调节。
  • 界面可以查看时间(时间为从SQL服务端获取,防止客户端时间不一致)
  • 单例模式实现换为内部类
  • 代码权限重构,前后分离

依赖

原版:

  • JFoenix
  • JDBC

增加:

  • JFreeChart
  • Beautyeye

文件

  • lib/*:依赖
  • out/*:编译输出
  • res/*:图片资源
  • src/*:源码
  • DBbackup.sql:数据库备份文件(程序没有建表相关逻辑,所以需要先进行导入)
  1. create a database with name "java_lab2"
  2. create a user named "java" with password set to "javajava", and grant all privileges on java_lab2 to it.

TODO

  • SQL CURD的时间维度都通过now()来从服务端获取。
  • 挂号id修改为类pid的自增方式。
  • 图表内嵌到FX面板(LineChart)
  • 增加修改密码逻辑
  • 偶尔在服务器端长时间获取表单的时候会有bug,时间紧,没注意复现。