自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 今天学着使用maven打正式版本,总结了几个命令

1.发布正式版本的准备mvn release:prepare上述命令的执行过程中会依次让你输入正式版本的版本号(会给个默认值)、下个快照版本的版本号。准备失败的原因可能如下:a)存在尚未提交的文件,例如使用idea工具开发项目时会生成iml后缀的文件,这类文件不建议提交到svn上,但是又不能删除。可以使用svn的ignore命令忽略,这样就可以绕过校验。2.第一步执行完,sv...

2018-11-09 18:17:03 866

原创 读大话设计模式有感-记一次代码重构历程

问题:为什么要代码重构?最近,项目底层数据库升级,用的库呢是当下最热门的hadoop生态系统。数据库部门丢了两差异文档给我们写应用的,心想语法不会改动太大,大不了就是ctrl+r替换点关键字啥的。在制定mmp时,自信满满的跟经理报了一个很短的时间。开始时,一切还挺顺利的,建表语句啥的改个关键字就完事了。-- 旧CREATE TABLE A (f_1 string,f_2 long....

2018-11-08 21:19:21 253

原创 学习深入理解jvm虚拟机心得——谈谈GC垃圾收集器和回收策略(2)

1.前言有幸有了大段完整的学习时间,本人也逐步调整心态静下心来看一看经典的java书籍。今天把gc章节看完,感觉脑子里比较混乱,可能是这一章节的新名词比较多吧,parallel scavange,parnew,serial啊等等。有必要将这些没记住的内容总结下来。我比较认同的一个观点就是,带着问题去学习。面试中问到的与jvm基础相关的肯定少不了gc。下面举例a.堆内存中新生代老年代各自什么...

2018-10-15 17:39:54 209

原创 学习深入理解jvm虚拟机心得——Java内存区域与常见内存溢出异常(1)

Java内存区域与常见内存溢出异常目录1.运行时数据区域2.虚拟机对象3.OutOfMemorryError异常 1.运行时数据区域1.1 程序计数器特征:线程私有,唯一一个没有outofmemoryerror的区域。作用:字节码解释器运行时通过改变计数器的值来选取下一条需要执行的字节码指令1.2 堆/heap结构:新生代、老年代;再细致一点的有Eden...

2018-10-14 22:37:39 162

原创 学习jdk源码的一点心得总结

首先做一个自我介绍,我做java开发接近两年半的时间,真正开始看源码是从今年7月16号开始的,到现在大约过去了三个月,目前已看的有:集合类ArrayList/Vector/HashMap/HashTable/ConcurrentHashMap,包括jdk1.7和1.8的版本。另外简单了解了jvm虚拟机的内存结构、java中锁机制、synchronize的实现原理、spring ioc/aop的实现...

2018-10-11 12:00:08 2204 5

原创 学习java并发synchronized关键字

1.三种用法:修饰实例方法、静态方法、代码块。2.底层语义原理:基于进入和退出管程(Monitor)实现,同步方法并不是由monitorenter和monitorexit指令来实现同步的,而是由方法调用指令读取运行时常量池中方法的ACC_SYNCHRONIZED标志来隐式实现。3.在JVM中,对象在内存中的布局分为三块区域:对象头、实例数据、填充数据。3.1此处实例变量和填充数据不作详...

2018-10-11 10:55:06 89

原创 Java小知识汇总

一.Thread相关:几个方法:Thread.yield(),Thread.sleep(),Thread.stop(),Object.wait()yield不会造成线程阻塞,重新使线程进入就绪状态。将cpu执行机会让给其他同样优先级或者更高优先级的线程跑任务。可能出现的情况有:调用yield()方法之后,当前没有更高优先级的线程需要执行,然后当前线程被调度器调度执行。通常情况下配合whil...

2018-10-11 09:56:59 293

原创 学习JDK1.8ConcurrentHashMap获得的额外知识

1.运算符~代表取反,例如0001取反得1110,正数取反步骤:取反、减一、取反;负数取反步骤:取反、加一、取反。2.assert关键字:仅在程序调试时使用,用来输出错误日志。3.底层的数据结构:由数组加链表/红黑树的方式实现,与hashmap相同;4.如何实现分段锁:每一个链表作为锁的对象,由synchronized关键字控制。5.相比1.7有哪些改进?6.String不可变...

2018-10-10 16:05:20 106

原创 记一次国庆假期学习心里路程

这次国庆放假累计八天,30号另算请假一天。从30号开始到今天,几乎天天熬夜,没有打游戏也没有看电视剧,大部分时间花在了刷论坛、看搞笑视频等等,把平时上班时闲时休息干的事情在假期加倍。醒过来拿起手机刷一刷smzdm,看看优惠信息,打开闲鱼看看二手手机(想换掉备用机),最近还想买个相机、又刚好看到无人机,瞬间被他的高大上视角吸引,以至于刷别人拍的视频到凌晨三点、、、,最后啥也没买。。。(因为穷)这...

2018-10-05 23:36:45 138

原创 HashMap学习笔记,比较JDK1.7/1.8的区别

问题1:1.7和1.8各自如何让链表数据散列的更均匀,即如何重新计算hash值问题2:如何获取新加元素在数组中的下标,用什么方法实现?问题3:在扩容方面,一般情况下数据量大于当前容量*填装因子时,会采取扩容。jdk1.7有什么额外的判断?例如key从1-100,初始容量为16,为何key在12的时候没有去扩容,等于17的时候才去进行扩容。第二次扩容是在什么时候?前两次扩容有什么区别?问...

2018-08-29 14:55:23 651

原创 JAVA API访问HDFS遇到的一些问题

1.缺少jar包依赖maven依赖需要引入hadoop-common/hadoop-auth/hadoop-hdfs等,我在开发过程中还遇到以上三个jar包使用google的jar包依赖缺少/版本不对的问题,依次引入就好。2.windows环境下使用开发工具进行远程连接测试,报could not locate executable null\bin\winutils.exe in hado...

2018-07-23 20:16:42 1796 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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