项目总结分享篇

经过一段时间的忙碌,一个项目结束了,期间遇到很多困难,也踩过不少坑,,好在每次都挣扎着爬出坑了,爬坑的过程也是学习的过程,积累经验的过程,爬出坑后带来的是收获,是对知识的新理解,经过实际运用,终于理解了当时书上说的话是什么意思。每次做完一件事,也都会发现自己身上的一些问题,现在我发现我最大的问题就是太怂了,我怎么 能这么怂啊。额,我好像在写作文了,言归正传,总结下项目遇到的问题及完成这项任务后积累的经验。
1.多文件导入
多文件导入虽然传了多个文件进去,但原理还是一个文件导入后再导入另一个文件,因此多文件导入实际是对文件数组的遍历,只需将传入方法的参数由MultipartFile 类型改为MultipartFile[] ;类型即可。
2.csv文件导入

  • 问题1:怎么从第二行开始导入?
    导入默认从第一行开始读取,而项目实际需求从第二行开始读取,只需加一行代码 reader.readLine();

  • 问题2:后面几位都没有数据,没有根据逗号继续分隔?
    对读入的每一行数据按逗号分隔, 平常切割的方法是这样的,String[] row = line.split(’,’);但当后几位都是逗号时不会继续切割,导致数组越界问题 ;解决方案:String[] row = line.split(’,’,-1);长见识了吧

  • 问题3:csv文件中每行都有三十几个数据,我要get,set三十多次吗?
    运用反射动态地将数组中的值动态的赋值给对应的model类,但需要注意 model类的参数个数不能大于数组中值的个数。

  • 在遇到反射异常或某个数据出现 数据类型异常 等异常时需要 给出异常提示,但方法的返回类型是list,无法返回提示信息,采用了自定义异常,将提示信息以异常方式抛出。异常语句:throw new Exception(“出入日期格式不正确”);

  • 批量入库遇到的问题:1.批量入库的返回值是批量入库的数据条数。2.数据类型问题:model中的性别类型为int类型,批量入库后存入的数据都是0,解决方案:改为字符串类型即可,原因不知。

航班票务

关于订单拆分问题:拆分订单时异常场景:一个备案人员A,一个非备案人员B 加入同一个订单,此时A状态为审核完成状态,而B状态为未审核状态 订单状态为 未完成状态(备案人员与非备案人员都会进入一审);->修改B的证件号码,改为备案的证件号,点击提交->此时会另外生成一个订单号,B变为备案旅客,直接进入票务,订单状态为已完成 。 而A用原来的订单号,订单状态依然是未完成状态,虽然状态为已完成状态,但仍然在一审,存在bug.

不拆分订单异常场景:一个备案人员A,一个非备案人员B 加入同一个订单,进入一审后将B状态改为一审不通过,此时两个旅客都会出现在票务管理页面。B修改信息后重新进入一审进行审核,此时由于未拆单,两个旅客还是共用同一个订单,A原先已经到了票务页面,且为审核完成状态,但因为B进入一审,导致A也进入了一审。
订单的拆分和不拆分都会有问题,针对两种异常场景 分情况,一审不通过和二审不通过时拆单,其余情况不拆单

拆单遇到的问题:一个旅客修改信息后与另一旅客共用了同一个订单,异常原因:点击修改时 会生成一个新的订单号,订单号的生成 错误导致订单号与原有的订单号重复。,解决方案,判断订单号是否已存在,存在则++,直到不重复为止。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值