geek的技术日志,记录每一次技术思考的闪光点。

Java

JAVA CAS原理分析

later阅读(207)评论(0)

java.util.concurrent包完全建立在CAS之上的,没有CAS就不会有此包。可见CAS的重要性。   CAS CAS:Compare and Swap, 翻译成比较并交换。 java.util.concurrent包...

java产生随机数的N种方法

later阅读(161)评论(0)

首先,如果是需要32位的数字字母,可以用UUID,还可以直接计算MD5值。 一.在j2se里我们可以使用Math.random()方法来产生一个随机数,这个产生的随机数是0-1之间的一个double,我们可以把他乘以一定的数,比如说乘以10...

fastjson远程代码执行漏洞解决方案

later阅读(1390)评论(1)

fastjson相信很多人都用过。 近日,网上爆出fastjson存在远程代码执行漏洞!然后我们公司发现好多项目代码都有用到这个包,坑爹了。更坑爹的是老板把这个任务交了给我,要我去研究,负责给出解决方案!本来就很忙的了,NND,还惹上这事。...

最近3年常见的Java面试问题总结

later阅读(471)评论(0)

Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。 在我初入职场的时候,类似于 Vector 与...

知名公司的Java面试题

later阅读(272)评论(0)

巴克莱投资: 假设有一个 getNextparson() 方法返回 Person 对象,Person 类实现了 comparable 接口,现在从文件中读取记录并排序,然后给出前 1000 条记录,纸上作答 答案见Glassdoor 写一个...

常见的Java线程面试题

later阅读(212)评论(0)

不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎。大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发、调试、...

Lock和synchronized的主要区别比较详解

later阅读(136)评论(0)

今天看了并发实践这本书的ReentantLock这章,感觉对ReentantLock还是不够熟悉,有许多疑问,所有在网上找了很多文章看了一下,总体说的不够详细,重点和焦点问题没有谈到,但这篇文章相当不错,说的很全面,主要的重点都说到了,所有...

String与StringBuffer的区别

later阅读(137)评论(0)

String与StringBuffer的区别简单地说,就是一个变量和常量的关系。StringBuffer对象的内容可以修改;而String对象一旦产生后就不可以被修改,重新赋值其实是两个对象。StringBuffer的内部实现方式和Stri...

SpringMVC框架原理介绍

later阅读(153)评论(0)

  Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。 spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择...

JVM学习:常见的GC收集器

later阅读(113)评论(0)

GC收集器主要有7种: 1.serial收集器 单线程,工作时必须暂停其他工作线程。多用于client机器上,使用复制算法 2.ParNew收集器 serial收集器的多线程版本,server模式下虚拟机首选的新生代收集器。复制算法 3.P...

Java并发编程学习之happens-before俗解

later阅读(96)评论(0)

学习Java并发,到后面总会接触到happens-before偏序关系。初接触玩意儿简直就是不知所云,下面是经过一段时间折腾后个人对此的一点浅薄理解,希望对初接触的人有帮助。如有不正确之处,欢迎指正。 synchronized、大部分锁,众...

Kafka+Storm+HDFS整合案例实践

later阅读(121)评论(0)

在基于Hadoop平台的很多应用场景中,我们需要对数据进行离线和实时分析,离线分析可以很容易地借助于Hive来实现统计分析,但是对于实时的需求Hive就不合适了。实时应用场景可以使用Storm,它是一个实时处理系统,它为实时处理类应用提供了...

java基础面试题之static和final总结

later阅读(91)评论(0)

这两天看到身边不少同学去面试的时候,碰到的一个问题就是关于static,final这两个关键字,所以我也来总结一下。 1.static 关键字(静态的)①静态方法通常,在一个类里定义一个方法为static,也就是说无需本类的对象即可直接调用...

关于单例和static的区别

later阅读(72)评论(0)

1.单例无论怎么说还是类实例,而类实例占用的内存空间是堆空间,而Class则被加载置方法区,包括所有的方法;2.单例是从设计模式层面讲的,是相对类的运行空间讲的,spring容器也有单实例的概念,但它的“singleton”实例是容器创建的...