丸辣!BigDecimal又踩坑了
前言 小菜之前在国内的一家电商公司自研电商项目,在那个项目中是以人民币的分为最小单位使用Long来进行计算 现在小菜在跨境电商公司也接到了类似的计算需求,在小菜火速完成提交代码后,却被技术leader给叫过去臭骂了一顿 技术leader让小菜将类型改为BigDecimal,小菜苦思不得其解,于是下班后发奋图强,准备搞懂BigDecimal后再对代码进行修改…
记录技术探索,分享实践心得。
共 1784 篇文章前言 小菜之前在国内的一家电商公司自研电商项目,在那个项目中是以人民币的分为最小单位使用Long来进行计算 现在小菜在跨境电商公司也接到了类似的计算需求,在小菜火速完成提交代码后,却被技术leader给叫过去臭骂了一顿 技术leader让小菜将类型改为BigDecimal,小菜苦思不得其解,于是下班后发奋图强,准备搞懂BigDecimal后再对代码进行修改…
问题重现 日常开发中为了方便快捷的初始化一个List,经常会用到Arrays.asList()这个方法,不过有一次却出现了一个很奇怪的问题,测试代码如下: @Test public void test() { List<Integer> ids=Arrays.asList(1,2); ids.add(3); } 运行结果…
什么是 Java Web 如果你是70、80后的程序员,你一定要看一看这篇文章,保证满满的回忆。如果你是90后,那你更要看看这篇文章,因为你能找到java web发展的历史。 言归正传,Java语言能长期霸占语言排行榜一个重要的原因就是强大的web开发能力,web开发是java的基石(在EJB推出的时候当时的Sun用基石来描述EJB),所以了解java…
JSP作为Servlet技术的扩展,经常会有人将JSP和Servlet搞混。本文,将为大家带来Servlet和JSP的区别,希望对大家有所帮助。 Servlet和JSP的区别 1、Servlet在Java代码中可以通过HttpServletResponse对象动态输出HTML内容。…
在 Java 开发的征途中,我们时常与重复代码不期而遇。这些重复代码不仅让项目显得笨重,更增加了维护成本。幸运的是, Java 8 带来了函数式编程的春风,以 Function 接口为代表的一系列新特性,为我们提供了破除这一难题的利剑。本文将以一个实际应用场景为例,即使用 Java 8 的函数式编程特性来重构数据有效性断言逻辑,展示如何通过…
ReflectionUtils提高反射性能! 有一次小菜遇上一个通用的需求,于是决定在项目中使用反射,等到小菜提交代码后,审核代码的技术leader直摇头,又把小菜给叫过去了 技术leader:小菜同学,项目里用反射性能是会变慢的,但有时候为了通用性是可以用反射的,原生的反射API性能没那么好,我们可以使用Spring框架封装的…
FactoryBean 是 Spring 框架中的一个高级特性,它允许开发者通过自定义的方式控制对象的创建过程。当需要编写复杂的初始化逻辑,而这些逻辑不适合直接放在类的构造函数或初始化方法中时, FactoryBean 提供了一个很好的解决方案。通过实现 FactoryBean 接口,可以在一个单独的方法(通常是 getObject()…
在现代 Web 应用中,JSON 是前后端数据交互的重要格式。然而,随着数据量的增加,JSON 对象的体积可能会变得非常大,导致网络传输的效率大幅降低。为了优化传输速度,我们可以通过 Gzip 压缩超大的 JSON 对象来减少传输时间。在本文中,我们将结合 Spring Boot、Filter、Thymeleaf 模板、JavaScript 和…