自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 线程池的使用、问题排查、源码分析等

线程池的核心参数、监控、问题排查、源码分析

2022-06-26 15:54:09 271 1

原创 CountDownLatch

关于CountDownLatch,我从以下几方面进行讲解:1、百度说明同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。即,一组线程等待某一事件发生,事件没有发生前,所有线程将阻塞等待;而事件发生后,所有线程将开始执行;闭锁最初处于封闭状态,当事件发生后闭锁将被打开,一旦打开,闭锁将永远处于打开状态。2、个人理解执行一件事情,需要等几件事情全部执行完之后才能执行这件事情。比如:要想执行A功能,需要等B、C、D全部执行完之后,再去执行A功能。3、代码示例public

2021-01-25 23:01:30 557

原创 如何创建一个线程

创建线程有以下几种方式!1、继承Thread创建public class CreateThreadTest { public static void main(String[] args) { Thread threadExtends = new ThreadExtends(); threadExtends.start(); // 注意,这里一定要使用start方法,它是启动线程的方法! }}class ThreadExtends extends T

2021-01-24 21:20:00 5816

原创 信号量(Semaphore)

我们从以下几点学习信号量1、信号量的作用,信号量是用来做什么的?它维护了一个许可集,我们在初始化时需要传一个许可集数量,该数量值代表同一时间能访问共享资源的线程数量。线程可以通过acquire()方法得到一个许可,然后对共享资源进行操作,如果许可集已经用完了,哪线程在这里等待,直到其他线程释放,它才有机会再次获得许可。线程释放通过release完成,“许可才能归还给semaphore”简单的理解为我这里有10个车位,每次过来最多有10辆车可以同时停车,当走了一辆车以后,我们才能停新的车辆!2、例

2021-01-18 23:33:41 693 2

原创 mac使用brew安装mysql

mac使用brew安装mysql首先使用brew install mysql@5.7配置环境变量启动mysql设置密码首先使用brew install mysql@5.7如果想查看版本,直接使用brew search mysql.配置环境变量现在都安装了zsh,在vim ~/.zshrc配置环境变量。一般使用brew安装的文件都在:/usr/local/Cellar/下。我的mysql...

2019-11-24 19:08:39 2413

原创 如使用两个线程交替打印A-Z

如使用两个线程交替打印A-Z使用锁不适用锁使用锁static char print = 'a';public static void main(String[] args) { new Thread(() ->{ synchronized (args) { // 锁的名称 while (print <= 'z') { ...

2019-10-06 19:21:24 498

原创 java io 常规操作

谈起java 读写操作,不得不说的是io操作。io操作,我们必须了解的是两点:1、面向流(指的是操作如流水一样,不能颠倒,像队操作那样)2、组赛IO(读和写不能同时进行)里面详细内容在这不做详细解释,因为这些东西特别多,要想认真学习,得学习相应书籍。一般常用的操作如下: // 以下操作主要是写操作 File file = new File("D:\\txt\\test.txt");...

2019-05-20 21:44:10 175

原创 java提取字符串中数字

Pattern pattern = Pattern.compile("[需要匹配的数字(正则表达式)]"); Matcher matcher = pattern.matcher(n); while (matcher.find()) { System.out.println(matcher.group()); }现在我们获取字符串中的金钱,如下:pub...

2019-05-12 18:07:50 16020 1

原创 java如何生成随机数

java生成随机数有两种方法:1、使用Math方法,Math.random()随机生成一个double类型[0,1),如果想生成1~100的随机数:如:int num = (int)(Math.random()*100);2、使用Random方法, Random random = new Random();(中间可以传值,传值后生成的是固定的了,详细的请关注下面星球,有写)。如:rando...

2019-04-28 21:14:17 107679 6

原创 win10 如何安装java并配置环境变量

安装java,这里的操作系统是10,java版本是81、去java官网找资源,或者直接搜java下载(https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)2、选择你要下载的版本(下载时特别烦的一点是,需要登陆oracle账号,用邮箱就可以注册,特别快,1.8版本之前都不好找了)...

2019-04-27 18:47:26 790

原创 http常见的状态码

1、200~299最常见的是200,客户端请求成功2、300~3991)、302,重定向跳转,跳转地址通过location指定2)、303,该状态码表示由于请求对应得资源存在着另一个URI,重定向失败3、400~4991)、400,客户端请求有语法错误,不能被服务器识别,请改正前端错误2)、403,服务器收到请求,但拒绝提供服务3)、404,请求资源不存在,没有这个请求4)、40...

2019-04-27 17:54:25 329

翻译 idea搭建ssm框架

使用idea搭建ssm框架pom.xml文件&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://m...

2018-04-06 22:40:49 219

原创 MySql常用知识

MySql索引 想学习好数据库,对数据库的查询想掌握特别深的话,这是必须知道,也是必须学的。hash索引: 它的底层使用的是hash表(原理这里就不说了),主有Memory存储引擎显示支持Hash索引,它也是Memory表的默认索引类型,它页可以使用B+树索引。(过多就不详细说了,我也不太了解)B+树索引 B+树大家都知道吧(不知道的话,可以在网上搜搜,懂原理就行,实现起来困难非常大,小编

2017-12-17 20:05:57 192 2

原创 集合(常用集合的底层原理)

本文主要从Collection、Map、链表等方向进行分析

2017-12-14 21:57:48 2943

原创 二叉平衡树

二叉平衡树说起这个树,我找了整整两天的时间,刚开始考虑的不周全,然后就一直该一直该,一直加一直加。 定义: 它是一颗空疏或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一颗平衡二叉树。 二叉查找树的定义: 1、若左子树不为空,那么左子树所有结点的值小于均小于他的根结点的值 2、若右子树不为空,那么右子树的所有结点的值大于根结点的值 3、左右子树也分别为二叉查找树(

2017-11-16 00:18:21 354

原创 二叉查找树

二叉查找树有这几个规则1、若左子树不为空,那么左子树所有节点的值小于均小于他的根节点的值。2、若右子树不为空,那么右子树的所有节点的值大于根节点的值。3、左右子树也分别为二叉树排序树。4、没有键值相等的节点。注意:每个值都不能一样,如果有一样的,我们不需做考虑。添加挺简单的,看下面的代码。首先做准备// 主要用来保存节点private Node<T> r...

2017-11-13 22:54:12 530

空空如也

空空如也

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

TA关注的人

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