这几天发现自己好久没有来csdn了,想起以前想的是每天写一篇文章,现在发现,自己连一个月一篇都没写,自己还是懒和坚持不下来,这样造成自己在CSDN上产出的文章很少。下面介绍下最近工作遇到的问题,以及解决方法,这样也为在工作中有遇到相同问题的伙伴,提供解决方法。
问题1:
项目中在对spring boot升级,以前用的是spring boot1.4升级到2.1.2.在配置文件中做出了几点的改变。如果有人用到flyway的配置,发现配置路径已经改变。以前是
sprng boot 2.0后需要放在spring配置下面。
这个改变需要注意,不然发现,flayway总是报错。
同样也是sping boot升级中遇到的问题,因为用到了文件上传。发现Kong也没有限制上传的文件大小,网关也是放开了文件大小设置,加上代码没有修改过,只能是由于升级造成的。因为报错信息如下:
发现上图中就是spring boot默认限制大小。说明自己的配置没有生效,明明设置为100MB了。查资料发现,需要将
spring:
http:
multipart:
maxFileSize: 100MB
maxRequestSize: 100MB
修改为:
spring:
servlet:
multipart:
maxFileSize: 100MB
maxRequestSize: 100MB
重启下服务就可以了。注意如果网关也做了限制,配置文件大小的时候,也需要注意此处。
问题2:在获取分页的时候,需要注意不要轻易使用Count与group by ,因为在统计总条数的时候,这样在group by中的数据都会统计一次,分页就会失败。处理方法,可以先把数据按照分页取出来,然后再使用一个接口去获取统计,然后填充到分页的列表中,这样就可以解决。
问题3:
使用feign client中调用其他服务接口,需要注意,传参数中只有一个@RequestBody,不能有多个,否则会报错,提示拥有many requestBody。这个时候就去检查下参数,在请求多个对象的时候,可以拆分使用@requestParam,也可以使用其他方法,不过这是我的解决方法。
后续继续更新项目中遇到的问题和解决方法,由于最近接了其他项目,可能需要半个月或者一个月更新问题,大家也可以留言项目中遇到的问题,大家一起讨论,每个人对问题的解决不一样,这样也收益很多,谢谢!