zayac-admin/continew-admin-common
Charles7c dc751fc3ec 优化:基于阿里巴巴 Java 开发手册(黄山版)优化部分方法使用
1.编程规约>OOP规约>第12条:
【强制】禁止使用构造方法 BigDecimal(double) 的方式把 double 值转化为 BigDecimal 对象。
说明:BigDecimal(double) 存在精度损失风险,在精确计算或值比较的场景中可能会导致业务逻辑异常。
如:BigDecimal g = new BigDecimal(0.1F);实际的存储值为:0.100000001490116119384765625
正例:优先推荐入参为 String 的构造方法,或使用 BigDecimal 的 valueOf 方法,此方法内部其实执行了 Double 的
toString,而 Double 的 toString 按 double 的实际能表达的精度对尾数进行了截断。
BigDecimal recommend1 = new BigDecimal("0.1");
BigDecimal recommend2 = BigDecimal.valueOf(0.1);
2.编程规约>OOP规约>第19条:
【推荐】使用索引访问用 String 的 split 方法得到的数组时,需做最后一个分隔符后有无内容的检查,
否则会有抛 IndexOutOfBoundsException 的风险。
说明:
  String str = "a,b,c,,";
  String[] ary = str.split(",");
  // 预期大于 3,结果等于 3
  System.out.println(ary.length);
2023-03-03 23:14:15 +08:00
..
src/main/java/top/charles7c/cnadmin/common 优化:基于阿里巴巴 Java 开发手册(黄山版)优化部分方法使用 2023-03-03 23:14:15 +08:00
pom.xml 新增:新增系统管理/部门管理/导出功能(引入 Easy Excel 依赖用于导出 Excel,详情可见 README 介绍。另请注意:测试导出功能时,前端需要关闭 mockjs,否则 responseType 会被 mockjs 设置为 '',导致导出的文件无法打开) 2023-02-06 23:02:23 +08:00