
Java
文章平均质量分 77
家鸽996
helloworld
展开
-
2021-04-12
前言在实际工作中,经常由于设计不佳或者各种因素,导致类之间相互依赖。这些类可能单独使用时不会出问题,但是在使用Spring进行管理的时候可能就会抛出BeanCurrentlyInCreationException等异常 。当抛出这种异常时表示Spring解决不了该循环依赖,本文将简要说明Spring对于循环依赖的解决方法。循环依赖的产生和解决的前提循环依赖的产生可能有很多种情况,例如:A的构造方法中依赖了B的实例对象,同时B的构造方法中依赖了A的实例对象 A的构造方法中依赖了B的实例对象,原创 2021-04-12 15:49:55 · 174 阅读 · 0 评论 -
为什么BigDecimal 计算不丢进度?
1、先说下new BigDecimal("1.005") 和 new BigDecimal(1.005) 的差异new BigDecimal(1.005)依然会丢进度,什么原因?因为传入的参数已经是double了,double本身存储就会丢数据,具体可以看我上篇文章浮点数加减丢失精度原因剖析。那为什么new BigDecimal("1.005") 不会丢数据(极端情况下还是会的)?先上代码...原创 2019-11-05 19:08:58 · 683 阅读 · 0 评论 -
springMVC 接收支付宝回调接口
/** * 1、支付宝充值,或者任务支付 * @author yangxujia * @throws UnsupportedEncodingException * @date 2015年10月28日上午11:44:07 */ @RequestMapping("/receiveFromAlipay.do") @ResponseBody public St...原创 2016-05-25 18:24:49 · 3535 阅读 · 0 评论 -
浮点数加减丢失精度原因剖析
这里以1.005为例子,模拟二进制存储1为整数位package baseJava;import java.math.BigDecimal;import java.util.HashMap;public class DoubleTest { public static void main(String[] args) { double decimalPart = ...原创 2018-09-20 15:52:41 · 2839 阅读 · 0 评论 -
深入理解JVM—JVM内存模型
我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,CPU厂商在每颗CPU上加入了高速缓存,用来缓解这种症状,因此,现在CPU同内存交互就变成了下面的样子...转载 2018-11-30 16:49:50 · 248 阅读 · 0 评论