自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (39)
  • 收藏
  • 关注

原创 [JVM] JVM内存模型详解

​JVM是Java Virtual Machine(Java虚拟机)的缩写,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行,这也是Java能够“一次编译,到处运行”的原因。

2023-08-16 17:28:18 75

原创 ReentrantLock源码分析(二)

ReentrantLock的使用方法、基本原理和源码分析

2023-08-15 16:07:40 77

原创 ReentrantLock源码分析(一)

并发编程,AQS,ReentrantLock

2023-08-05 21:17:36 78

原创 JDK1.8 LinkedHashMap源码分析

HashMap中元素插入时无序的,为了让遍历顺序和插入顺序一致,可以使用LinkedHashMap。

2023-07-31 18:00:07 86

原创 JDK1.8 HashTable源码分析

本文基于JDK1.8对HashTable源码分析。HashTable和HashMap一样,也是基于哈希表存储数据,HashTable底层是基于数组+链表方式存储,而HashMap是基于数组+链表或者红黑树的方式存储。HashTable是线程安全的,底层使用synchronized同步锁实现确保线程安全,HashMap非线程安全。

2023-07-31 11:25:23 38

原创 JDK1.8 HashMap源码分析

HashMap代码写很巧妙,值得深读。

2023-07-30 15:43:36 84

原创 JDK1.8 CopyOnWriteArrayList源码分析

JDK1.8 CopyOnWriteArrayList源码解析,使用ReentrantLock加锁,主要思想“写时复制”

2023-07-28 12:29:24 55

原创 Vector源码解析

本文是基于JDK1.8源码分析。Vector和ArrayList非常类似,继承相同的类,实现相同的接口,就连方法实现也基本类似。

2023-07-27 10:41:52 28

原创 HashSet源码解析

本文基于JDK1.8对HaseSet源码分析HashSet类层级关系结构图可以看到HashSet 实现了Set接口,那为什么叫HashSet?因为HashSet内部采用HashMap存储数据。由于HashMap的key允许null值,key不允许重复,所以HashSet可以存储null值,但是元素不允许重复,和HashMap一样,也线程不安全。可以看到创建HashSet时,本质就是初始化HashMap。add(E e) 添加指定元素remove(Object o) 删除指定元素。

2023-07-26 19:27:11 35

原创 ArrayList源码解析

ArrayList采用数组存储数据,允许重复数据和null值。ArrayList大体和Vector类似,最大的区别是ArrayList非线程安全,Vector线程安全。

2023-07-26 17:25:03 32

原创 LinkedList源码解析

LinkedList源码解析

2023-07-25 16:50:21 119

原创 redis常见问题

redis常见文件

2023-07-20 10:38:35 28

原创 在linux系统安装docker

docker安装,docker入门

2023-07-20 10:11:34 55

原创 SpringBoot 项目生成docker镜像文件

springboot项目生成docker镜像,制作docker镜像,dockerfile

2023-07-20 09:43:32 973

原创 docker搭建redis-cluster分布式集群

docker搭建redis-cluster分布式集群,redis分布式集群

2023-07-19 20:30:46 159

原创 使用docker搭建redis哨兵sentinel集群

docker搭建redis-sentinel集群,哨兵集群

2023-07-19 19:58:51 935

原创 使用docker搭建redis主从(master-slave)集群

docker搭建redis的主从集群,master-slave

2023-07-19 18:37:41 624

原创 使用docker安装redis

使用docker创建redis容器,方便卸载

2023-07-19 16:52:56 69

原创 使用docker安装mysql

使用docke安装mysql,方便卸载

2023-07-19 16:27:58 130

原创 vue入门指南及登录页

Vue入门指南,vue登录页面

2023-07-19 15:50:02 137

原创 CPU 利用率高、飙升排查

查看CPU使用排名靠前的进程。

2023-07-17 09:58:35 52 1

原创 RocketMQ入门

同一个业务的多个消息有序的存入同一个队列。实现:让业务。

2023-07-14 17:07:18 80 1

原创 使用Docker安装RocketMQ

docker/rocketmq/data/namesrv/store目录。/docker/rocketmq/data/namesrv/logs目录。/docker/rocketmq/data/broker/store目录。/docker/rocketmq/data/broker/logs目录。把容器内的/root/store数据存储目录挂载到宿主机的。把容器内的/root/store数据存储目录挂载到宿主机的。把容器内的/root/logs日志目录挂载到宿主机的。启动mqnamesrv服务。

2023-07-14 11:34:06 189 1

原创 Unsafe源码解析

JDK源码解读

2023-07-13 20:19:45 38 1

原创 mysql 数据库事务隔离级别

所谓脏读就是一个事务 A 读取另一个事务 B 修改但尚未提交的数据, 并在此基础上操作,而事务 B 又执行事务回滚(也就是撤销了事务), 因为这个数据是还没有提交的数据, 那么事务A读到的这个数据是脏数据,依据脏数据所做的操作可能是不正确的。所谓数据库访问的并发性问题是指多个事务可以同时访问数据库中的数据,而当多个事务在数据库中并发执行(同时执行)时,数据的一致性可能出现问题,从而导致数据出现问题。事务A两次读此数据之间,事务B对数据进行修改,那么事务A读到的数据是不一样的,因此称为是不可重复读。

2023-06-16 14:00:14 56 1

原创 编译openjdk8源码

(4)特别说明:yum取的源可能是CentOS-Base.repo里面的配置,也可能取的是单个配置文件里面的,比如AppStream的源可能取CentOS-AppStream.repo里面的配置,也可能取CentOS-Base.repo的配置,这两者可能会冲突,也可能不会冲突,不冲突报错可不理,若是报错,建议先重命名备份CentOS-AppStream.repo文件。即可(也可以不运行,若是执行完步骤2后,还出现报错的情况,可再补充执行该步骤)(2)执行切换命令,两个命令二选一,这里选的是。

2023-05-06 13:52:15 254 1

原创 Redis实现分布式锁

在使用 Lua 脚本执行 Redis 操作时,为了避免多次编译 Lua 脚本而降低性能,可以将 Lua 脚本的 SHA1 值缓存起来,然后使用 EVALSHA 命令来执行缓存的 Lua 脚本,这样可以提高 Redis 操作的性能。在上述代码中,LUA_LOCK_SCRIPT 和 LUA_UNLOCK_SCRIPT 分别是获取锁和释放锁的 Lua 脚本。getLock() 方法使用 RedisTemplate 的 execute() 方法执行获取锁的 Lua 脚本;

2023-05-06 11:21:31 339 1

原创 PJSIP集成到Android项目的历程

刚进公司时,接手了一个项目。项目中有一个模块就是PJSIP,遇到的问题就是稳定性差,莫名的Crash。             大家可能都会有这种经验,当点击某一个按钮,导致程序崩溃,遇到这种问题通常容易解决。解决方式就是查看这个点击事件具体的操作,然后对操作进行调试就能很快的发现并解决问题。但是遇到这种稳定性的问题,并且设计到JNI,就需要大量的测试,来定位问题,再考虑解决办法。   

2017-05-24 15:47:01 2476

原创 Volley小记

阅读Volley源码快有一周时间了,从最初的不知从何看起,到后来的大致了解,这是一个漫长的过程。下面就对观看心得做一个小结,以后会有更多的需要阅读源码,希望这次积累的经验对今后阅读源码、技术文档产生帮助。   在查看框架的源码时,最重要的是先找准入口,就像一个迷宫,如果入口都找不到,根本就无法找到正确的道路,通过迷宫。而寻找入口的方法很简单,就是我们在使用这个框架时,第一行写的代码,这就是我们

2017-01-13 14:19:58 227

原创 Fragment和Activity交互,Fragment回调

在一些情况下,你可能需要fragment与activity共享事件。这样做的一个好方法是在fragment内部定义一个回调接口,并需要宿主activity实现它。当activity通过接口接收到回调时,可以在必要时与布局中的其它fragment共享信息。举个例子,如果新闻应用的actvity中有两个fragment——一个显示文章列表(fragment A),另一个显示一篇文章(f

2016-09-06 22:41:00 509

RxJavaAndRetrofit

RxJava最近很流行,之前上传了RxJava的demo。这个demo是结合了Retrofit和OkHttp,并将三者进行了封装整合,有效的避免了重复代码的编写。希望对正在学习Rxjava、Retrofit的有一定帮助

2017-01-05

smoothimageview

点击任意一张缩略图,会根据缩略图所在的位置慢慢放大与平移图片,最后展示出一张完整的图片

2016-05-18

POI中文帮助文档

POI 中文帮助文档,方便快捷导出Excel

2014-06-27

ibatis api.chm

ibatis API,ibatis帮助文档

2014-06-20

ExtJs皮肤包(11种主题色)

之前看到网友分享的ExtJs皮肤包,很好看,但是都不全,这个主题包一共有11种主题色,很全

2014-06-19

ExtJS3.1.0

ExtJS3.1.0

2014-06-12

SSH三大框架

三大框架

2014-03-06

struts教程

struts教程

2014-03-06

hibernate教程

hibernate教程

2014-03-04

struts2 xml

XML配置详解,

2014-03-04

oracle_jdbc.jar

适用于Oracle10g及更低版本的数据库。

2013-10-14

Java API,开发帮助文档

Java API,开发工具类,对于开发有很大的帮助。

2013-08-15

JMF.jar包,方便开发

这是JMFjar包!可以方便快捷的做视频开发,解决了视频开发的难题!

2013-04-24

导出扇形图的代码

该代码可以将所需要的资源导成扇形图,毕竟可以保存到指定的路径!

2013-01-25

导出矩阵图的代码

该代码可以将所需的资源转化成矩阵图,毕竟可以保存到指定的路径!

2013-01-25

线形图绘制的代码

该代码可以将所需要的资源绘制成线形图。这样方便使用者直观的观看数据的变化,尤其对于和业务有关的资源,可以很好的统计最近的业务!

2013-01-25

导出Excel文件

这个代码实现了将所需要的资源导出,最后导出的文件是Excel文件,保存在硬盘上,方便永久保存,同事也方便阅读!

2013-01-25

数据库课程设计报告

这是我个人在做网络数据库课程设计的时候,写的一个课程设计报告,仅供参考,希望可以对大家有帮助!

2013-01-25

java课程设计

这是我做的一个java的课程设计,主要功能有增删改查,用的是Sql Server数据库,用的是jdbc-odbc桥的连接方式!

2013-01-25

经典的皇后算法

这是关于皇后算法的解答过程,同时有详细的注释,如果大家想学习皇后算法,是不错的选择,希望对大家有帮助!

2013-01-25

ASP.net习题

这是.net是一些习题,对于初学者是不错的选择!

2013-01-25

第四代移动通信小论文

这是一篇关于第四代移动通信的小论文,关于移动通信做了一个比较详细的介绍!

2013-01-25

技术人员的人事面试

做为一个技术人员,很多时候,将我们拒之门外的并不是技术本身,而是我们的语言表达能力。而语言表达最突出的表现就是在人事面试时,很多技术人员通过了技术面试,但是却无法通过人事面试,最后与机会失之交臂!而该文档是对人事面试一个很好的总结,希望对大家有帮助!

2013-01-25

基于SSH的注册登录

基于Struts2+Spring+Hibernate+Oracle+Ajax的注册登录界面。通过ajax实现了前端的验证,实现了注册的同步功能,增加了用户的体验度!很多初学者学习了三大框架之后,不熟悉三大框架怎么整合,该代码很好的解决了这个问题,对于初学者是一个不错的参考案例!

2013-01-25

购物车系统

这是一个基于JSP+Servlet+Oracle的购物车。本购物车主要功能有增、删、改、查,有js前端验证,还实现了分页功能!

2013-01-25

酒店管理系统

这是一基于C/S模式的酒店管理系统,主要功能有来宾登记、房间预定、宾客入住、收银结账、营业查询、房间管理、系统设置、管理员登陆等主要模块!

2013-01-09

简易计算器

这是本人做的一个简单是计算器,功能比较简单,代码也比较短!

2012-06-02

java面试陷阱

在面试java程序员时,面试官经常考的题目,这都是一些细节问题,但是如果不掌握好,可能面试就不会通过,这是我的一些经验,希望对大家有一点点帮助!

2012-05-20

eclipse Dark Juno

eclipse 开发工具,黑色主题,解放眼睛。主题包下载完成后,请解压到Eclipse安装目录的dropins子目录下,重启Eclipse,并选择菜单"Preferences"->"General"->"Appearance",并选择Dark Juno主题。

2017-05-27

DisLruCache

Android内存较小,为了流畅的加载资源、节省流量等,需要对图片等资源进行缓存。而缓存主要分为内存缓存和本地缓存。DisLruCache是指本地缓存

2017-01-04

NodeViewPager

可滑动、可点击的时间轴

2017-01-04

GalleryFinalDemo

多图选择,可编辑

2017-01-04

CatchCrazyCat

疯狂的猫

2017-01-04

WebviewAndJs

WebView和Js交互。当用户点击WebView网页时,如何通知后台进行响应,这就需要用到WebView和Js交互

2017-01-04

QrCode二维码

二维码方便快捷,如需要在二维码中添加Logo,该怎么办?这个Demo可以生成带logo的二维码,希望对大家有帮助

2017-01-04

AIDL客户端和服务端Demo

在Aidl的应用过程当中,遇到很多问题。这个demo介绍了Aidl的使用,包含了两个不同的项目,客户端和服务端demo。希望对你学习Aidl有帮助

2017-01-04

VolleyDemo

Volley是Google提供的一个开源的网络请求框架,可对源代码进行二次开发

2017-01-04

RxJavaDemo

RxJava的使用。最近RxJava框架很火,就去了解学习了,后续会把RxJava+Retrofit结合的Demo上传。RxJava前期了解会有一定困惑,但是它的链式开发非常适合做大项目,有兴趣的可以了解

2017-01-04

RetrofitDemo

Retrofit的使用及封装

2017-01-04

空空如也

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

TA关注的人

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