java经典(疑难)问题处理备忘录

1、跨域问题

jsonp,反向代理服务器,后台controller设置头信息允许跨域,微服务环境下统一在zuul网关设置cos允许跨域

2、时间处理

使用java8 LocalDate -> mysql Date \  LocalDateTime -> mysql DateTime 新的时间类型与数据库类型一一对应,不需要用各种时间工具类转来转去了

3、地图轨迹描点慢问题

在同一图层进行描点绘制即可,切记不可循环new 新图层叠加展示,一个图层消耗的资源太大

4、PDF签名

插入签名图片到PDF文件

5、待办数据统计

业务需求比较复杂,查询sql复杂

6、前端树节点移动问题

树结构本身比较复杂,移动操作容易出错

7、工作流审核失败涨数据处理

本地库与远程库数据不一致,加事务处理

8、拼接参数多一个空格

粗心问题,这种问题最难发现与处理

9、金额计算精度丢失问题

使用BigDecimal进行加减乘除运算,然后计算结果转换成string,返回给前端

10、内存溢出问题

树结构数据递归时,结束条件没控制好

11、foreach迭代并删除元素

用foreach保存,要用iterator,跟二者的底层实现有关

12、idea web项目启动controller方法未映射,请求404问题

可能是有缓存,删除target目录再重启tomcat,还可能是tomcat配置问题,url配置路径与应用上下文(Application Context)路径不一致

13、apollo 热更新feign组件 @FeignClient(url = "${cch.fund.proxy.url:}") url属性失败问题,需重启项目才生效

14、编译报错,Error:(17, 17) java: 方法不会覆盖或实现超类型的方法,去掉这个方法中的@Override ,因为这个方法是抽象父类的接口,可以不用@Overrride注解 。

15、springboot项目默认静态资源目录为 resources -> static

16、mysql 单表500万行+或者大小2GB+建议分库分表

17、Constructor >> Autowired >> PostConstruct 如果初始化成员变量需要使用注入进来的对象或者值,那么应该放在被PostConstruct注解的方法中去做

18、Linux 服务器执行shell脚本报 syntax error near unexpected token `  ,原因是windows编辑的文件换行符与linux不一致,可用vim命令打开脚本文件,底线命令行执行 %s/^M//g ,上述命令行中的“^M”符,不是“^”再加上“M”,而是由“Ctrl+v”、“Ctrl+M”键生成的。详细请参考博客:https://blog.csdn.net/mydriverc2/article/details/78999981

19、Mybatis-plus 实体字段类型应该定义成包装类,因为生产动态sql的时候只做非null校验,而基础数据类型如int作为全局属性时有默认值0

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值