2022/1/17日总结

今天是我第一天写博客,遗憾的是这一天实际上在技术方面好像没有学到什么新东西,先总结一下自己在开发中有什么缺点:

   1、在功能开发时还是会粗心大意,比如说在查询时会忘记companyCode做筛选条件,从default数据中查询赋值重新保存时容易忽略code等字段。

   2、在功能逻辑上思考不全面,比如有关联行为的数据,在保存时做了处理,但是在主表进行更新或者删除操作时会忘记更新子表。

解决方法:

   在开发时还是要静下心来,现在相比之前实际上已经平静了许多,在工作时不会去思考别的东西,但是由于需要完成的功能太多,压力比较大,而且对自己过于自负,导致没有能静下心去思考功能开发时需要注意到的点,一直在赶进度,再一个就是自己水平能力还不够,有些地方在实现还有效率优化上还要仔细琢磨,导致开发时间被拉长。

 

今天的收获:

   1、知道GitHub的PageHelper用到了ThreadLocal(ThreadLocal的作用主要是做数据隔离,填充的数据只属于当前线程,变量的数据对别的线程而言是相对隔离的,在多线程环境下,如何防止自己的变量被其它线程篡改。),在

PageHelper.startPage(pageNum, pageSize);

时ThreadLocal中设置了分页参数,在执行查询时会拦截sql语句拼上limit,执行之后在finally中清除ThreadLocal中的查询参数

   2、对springboot对于bean的生命周期管理有了新的认识。

   3、对于mysql优化有了新的认识,对于字段类型对性能的影响有了比较深刻的认知,(最近在苏州开发发现有几张表打开查询很慢,明明数据没有多少,虽然我的ssd是个假货,但是导致SQLyog卡死真的是不能忍,后来发现某些表里有三四十个字段,其中有5-7个大数据量字段使用的是text类型)具体参考

上一篇:Java多线程——ThreadLocal介绍以及内存泄漏问题


下一篇:java基础-线程封闭