阿官

每天进步一点点

BigDecimal精度问题 and double基础类型默认小数位置问题

## 1、BigDecimal精度问题 场景:将double类型的数值转为BigDecimal来做数学运算 问题: BigDecimal d1 = new BigDecimal(698.745685); 打印输出d1 =698.7456849999999999999999 ...

2019-05-16 18:06:45

阅读数 0

评论数 0

springMVC请求参数解析问题:日期格式转换的问题(日期字符串yyyy-MM-dd解析为Date类型时时,返回400错误)

#写在最前:以后接收参数的属性类型,尽量都写为String类型,以免再次引发参数解析的问题   #问题描述: springmvc controller中的一个方法中,接收参数为一个Bean,在这个bean里面有一个类型为Date的属性leaveBeginDate 入参为json对象,格式:...

2018-08-02 17:20:51

阅读数 1017

评论数 0

几个注解说明(JPA注解,lombok插件应用)

一、@DynamicUpdate  作用:动态更新updateTime,但是若更新的内容跟数据库中的一致,则会优化,不做更新 是hibernate的注解,需要引入hibernate的依赖 二、@Data  作用:用此注解可以不用在代码中写属性的setter和getter方法,在打包的时候会...

2018-08-01 15:33:40

阅读数 503

评论数 0

ConcurrentHashMap 和HashMap常见的问题总结(jdk1.8的优化点)

JDK1.8之后的改进: 链表改成了红黑树,当链表中的结点达到一个阀值TREEIFY_THRESHOLD时,会将链表转换为红黑树,查询效率提从原来的O(n),提高为O(logn) 将每个segment的分段锁ReentrantLock改为CAS+Synchronized   ...

2018-08-01 15:30:06

阅读数 2050

评论数 2

Java核心技术36课笔记(一):谈谈你对java平台的理解

一 、java是解释执行的说法对吗? 不完全正确 1、疑问:解释执行和编译执行的区别? 类比:解释执行是同声传译(逐字逐句的解释翻译,执行速度慢),编译执行是播放录音(编译成机器可识别的机器码,所以编译执行的,执行速度快)。 2、名词解释 JRE(Java Runtime Envir...

2018-07-27 14:50:59

阅读数 245

评论数 0

java内存工作原理学习笔记(一):概述

java虚拟内存jvm逻辑内存1.程序计数器:每个线程都有自己的一个计数器(因为线程切换时,需要计数器记录执行的位置,这样才能在线程恢复时回到正确的执行位置),记录线程执行的字节码的行号指示器。分支,循环,跳转,异常处理以及线程恢复等都需要这个计数器。此区域是线程私有区域2.虚拟机栈:也是线程私有...

2018-06-01 10:57:01

阅读数 192

评论数 0

类加载过程学习笔记

1.加载(重要)加载阶段是“类加载机制”中的一个阶段,这个阶段通常也被称作“装载”,主要完成:1.1.通过“类全名”来获取定义此类的二进制字节流1.2 将字节流所代表的静态存储结构转换为方法区的运行时数据结构1.3 在java堆中生成一个代表这个类的java.lang.Class对象,作为方法区这...

2018-06-01 10:46:25

阅读数 100

评论数 0

Java中几种常量池的区分

Java中几种常量池的区分原文链接:http://tangxman.github.io/2015/07/27/the-difference-of-java-string-pool/           在java的内存分配中,经常听到很多关于常量池的描述,我开始看的时候也是看的很模糊,网上五花八门...

2018-06-01 10:43:58

阅读数 79

评论数 0

B tree和B+ tree,mysql的索引实现

一、b 树和b+树B树是一种多路自平衡搜索树,它类似普通的二叉树,但是B书允许每个节点有更多的子节点。B树示意图如下:B树的特点:(1)所有键值分布在整个树中(2)任何关键字出现且只出现在一个节点中(3)搜索有可能在非叶子节点结束(4)在关键字全集内做一次查找,性能逼近二分查找算法B+树是B树的变...

2018-04-11 14:30:55

阅读数 113

评论数 0

MyISAM并发插入、 InnoDB的间隙锁问题分析

根据网络资料学习并整理一、MyISAM并发插入#语法:lock tables [tablename] read/write Local#说明:1、local的作用:在满足MyISAM表并发插入条件的情况下,允许其他用户在表尾并发插入记录2、在用lock tables显示加锁时必须同时取得所有涉及到...

2018-04-11 14:24:09

阅读数 277

评论数 0

ConcurrentHashMap原理分析(锁分离技术)

1、结构由hash表、segment(桶)、hashEntry(节点)组成注:每个segment都继承了ReentrantLock2、hash过程步骤一:第一次hash,h1=hash1(key);步骤二:第二次hash找出segment的位置,h2=hash2(h1高几位)步骤三:第三次hash...

2018-04-04 17:08:00

阅读数 500

评论数 0

ThreadLocal内存泄漏的问题

前言ThreadLocal 的作用是提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递的复杂度。但是如果滥用 ThreadLocal,就可能会导致内存泄漏。下面,我们将围绕三个方面来分析 ThreadLocal 内存泄漏的问题Thread...

2018-04-04 16:50:03

阅读数 43

评论数 0

redis的特性和数据类型

问题:redis相对于关系数据库表结构优势是什么??数据可设置过期时间内存读写速度快数据类型多样化缓存,队列的功能一、redis的特性1、多种数据类型存储字符串类型散列类型列表类型集合类型有序集合类型2、内存存储与持久化内存的读写速度远快于硬盘自身提供了持久化功能(RDB、AOF两种方式)3、功能...

2018-03-12 10:40:58

阅读数 116

评论数 0

string、stringbuffer、stringbuilder的区别

String:对String对象的任何改变都不影响到原对象,相关的任何change对象的操作都会生成新的对象。1、String str="hello world" 和String str=new String("hello world&...

2018-03-12 09:39:55

阅读数 60

评论数 0

redis分布式锁的安全性探讨(二):分布式锁Redlock

在上一篇日志[redis分布式锁真的安全吗?(一):基于单个redis节点的分布式锁]中介绍了基于单个redis实现的分布式锁,存在无法解决的问题,一起回顾如下1、为了提高单redis的可用性,给master挂了一个从slave节点,因为主从复制是异步的,会出现不同客户端同时获取锁的情况客户端1在...

2018-03-07 17:37:19

阅读数 898

评论数 0

redis分布式锁安全性探讨(一):基于单个redis节点的分布式锁

一、基于单个redis节点的分布式锁步骤1:向redis发送命令,获取锁SET resource_name my_random_value NX PX 30000解释说明:my_random_value:客户端生成的随机值,要保证在足够长的时间内所有客户端生成的随机值是唯一的NX:当key为res...

2018-03-07 17:36:26

阅读数 176

评论数 0

mysql与oracle的区别

一、并发性(行锁的区别)mysql的InnoDB存储引擎虽然支持行锁,但是当表无索引或者sql语句索引失效时,行锁会变成表锁。oracle行锁,不依赖于表的索引二、事务mysql的MyISAM存储引擎不支持事务,在InnoDB存储引擎下才支持事务oracle完全支持事务三、事务隔离级别mysql默...

2018-03-07 17:33:39

阅读数 89

评论数 0

hashmap的实现原理(参考

要点一:为什么length是2的幂次方??1、hashMap的存储原理是将key的hash值跟 length-1 进行 & 运算(十进制是%求模运算),从而求得key在hashmap 数组中的位置。2的幂次方可以减少冲突(碰撞),提高hashMap的查询效率。注:碰撞即不同...

2018-03-05 19:24:11

阅读数 199

评论数 0

什么是分布式事务(二):分布式事务特性、2PC、3PC

作者:海洋链接:https://www.zhihu.com/question/65292792/answer/229459320来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。现今互联网界,分布式系统和微服务架构盛行。一个简单操作,在服务端非常可能是由多个服务和数据库...

2018-03-05 19:21:45

阅读数 1167

评论数 0

什么是分布式事务(一):概念、产生的原因、解决方案

分布式事务是什么先看看百度百科的解释,分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。简单来说就是一个大的操作由两个或者更多的小的操作共同完成。而这些小的操作又分布在不同的网络主机上。这些操作,要么全部成功执行,要么全部不执行。PS:拿...

2018-03-05 19:21:11

阅读数 1065

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭