
Java面试题
文章平均质量分 77
Java面试题
巴拿巴与保罗
这个作者很懒,什么都没留下…
展开
-
多线程高并发下的线程安全怎么实现
首先举一个例子现在有5个用户同时访问业务需要生成5个唯一订单ID并存入数据库这是一个公共的生成ID的类,生成的规则是【当前时间+用于自增的全局变量】(不要在意这个方式的弊端,只是用来举个栗子~)我们跑一下试试可以看到竟然有两个一模一样的ID,这是万万不能允许发生的情况为什么会发生这种情况呢,是因为多个线程在同一时间访问了这个方法,然后修改了这个int变量,上一个线程还没来得及做完所...原创 2019-10-16 22:17:45 · 806 阅读 · 0 评论 -
nosql和mangodb的区别
资料一nosql是not only sql的缩写,是一类数据管理系统的统称mangodb是一种基于key-value的分布式数据存储系统,算是nosql的一种nosql本身的意义是指数据库系统不局限于关系数据库的事务限制,通过放弃一些事务上的特性实现海量数据的高效存储管理,同时能够支持更加灵活的数据格式,mangodb就是一种nosql数据库,其特点是面向海量文档数据的存储,通过key-v...原创 2019-10-16 22:11:14 · 391 阅读 · 0 评论 -
StringBuffer和StringBuilder的本质区别
StringBuffer和StringBuilder都继承自抽象类AbstractStringBuilder。 存储数据的字符数组也没有被final修饰,说明值可以改变,且构造出来的字符串还有空余位置拼接字符串,但是拼接下去肯定也有不够用的时候,这时候它们内部都提供了一个自动扩容机制,当发现长度不够的时候(默认长度是16),会自动进行扩容工作,扩展为原数组长度的2倍加2,创建一个新的...原创 2019-10-16 21:49:02 · 139 阅读 · 0 评论 -
ArrayList和LinkedList的本质区别和使用效率
相同点:都实现了List接口,具有一系列相同的操作方法。都可以转化为数组。不同点:ArrayList本质上是一个数组(Object[]),LinkedList本质上是一个双向链表(Node())。增加的时候,ArrayList本质上是重新创建一个更长的数组,然后赋值。LinkedList是添加一个Node对象,速度上LinkedList更快。删除的时候,ArrayList是把删除的数...原创 2019-10-16 21:20:39 · 271 阅读 · 0 评论 -
Oracle,MySQL,sqlServer分页功能的写法
1.Oracle,MySQL,sqlServer写法的异同点,分页功能MySQL用limit分页select * from (select * from Student) limit 0,20; //取1-20条数据select * from (select * from Student) limit 20,20; //取21-40条数据第二种 写法select...转载 2019-10-16 21:02:02 · 356 阅读 · 1 评论