大批量推送项目日记(六):评审会议与后续代码完善
2020.8.11,星期二
评审会议
今天开评审会议。
整个会议持续了一天,上午9:30-11:30,下午13:20-17:00。
共有10位后端与2位经理参会。
会议上,每个后端讲了一遍各自开发的代码,并进行了功能展示,然后由经理指出待完善的地方;也可以自己提出有疑问的地方,大家讨论解决。
会议后,大家各自回到工位开始完善代码。
后续代码完善
1.在使用idea开发前端jsp的过程中,本人发现,虽然开启了自动更新代码功能,但是当修改代码后,浏览器中的内容并没有更新,需要手动刷新一次浏览器才能生效。(由于前端用的是不太熟悉的EasyUI,当发现加了按钮事件代码点击按钮还是没反应时,还以为是自己写的EasyUI代码错了,浪费了不少时间;后来才发现刷新下浏览器就好了......)
2.在处理大批量数据时,最好在sql中使用<foreach>标签,select、insert、update都可以结合foreach使用;
也就是说,在mapper.xml中写sql时使用<foreach>标签,然后将数据装入list,直接调用mapper方法将list传入即可;
这样相当于执行一次sql,比在代码中使用for循环、多次执行sql的速度要快。
用法可以参考这几个网址:https://www.cnblogs.com/dflmg/p/6398033.html
https://blog.csdn.net/weixin_39800144/article/details/79463876
https://blog.csdn.net/weixin_38809962/article/details/79610348
3.在select大批量数据时,最好在sql中加上limit,限制每次查出的数据大小,按照分页的方法获取数据;
虽然最后都要获取全部数据,不过使用limit并多次执行sql与只执行一次sql获取表中的全部数据相比,使用limit可以缓解CPU压力。(感觉就像搬家,一次全部搬走与分多次搬走,对CPU来说,还是分多次搬走的压力小点,一次全搬走可能搬不动从而导致其它后果)
这也是经理告诉我们的,看来实际项目中还是加limit的好。
4.操作大批量数据时,数据库要加索引。加索引可以很大程度上提高执行sql的效率。可以通过sql语句加索引,也可以直接用Navicat给数据库表加索引。