自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 玩转java多线程 之多线程实践 模拟龟兔赛跑

多线程实践一下首先需要有一个赛道距离,离终点越来越近判断比赛是否结束打印出比赛胜利者龟兔赛跑开始兔子睡觉,用sleep方法模拟乌龟赢得比赛直接看代码:package duoxiancheng;//模拟龟兔赛跑public class Race implements Runnable{ //胜利者 private static String winner; @Override public void run() { for (int i

2020-09-29 09:03:05 360

原创 玩转java多线程 之初识线程 并发问题

初识线程 并发问题

2020-09-28 10:41:56 174

原创 原创 玩转java多线程 之线程创建 实现Runnable接口

实现Runnable接口

2020-09-25 09:10:30 101

原创 玩转java多线程 之线程实战练习 从网上下载图片

这个明天更新

2020-09-24 09:08:15 130

原创 玩转java多线程 之线程创建 (详细)

线程创建有三种方式:第一:继承Thread类(重点)第二:实现Runnable接口(重点)第三:实现Callable接口(了解)代码明天给大家补充完整~

2020-09-23 09:04:37 139

原创 玩转java多线程 之初识多线程

现实中也有很多例子,看起来是多个任务在做,其实本质上,我们的大脑在同一时间只做了一件事情一个进程可以有多个线程程序是指令和数据的有序集合,本身没有任何运行的含义,是一个静态的概念进程是执行程序的一次执行过程,是一个动态的概念,是系统资源分配的单位一个进程中可以包含若干个线程,一个进程中至少有一个线程,比如main线程,线程是cpu调度和执行的单位很多多线程是模拟出来的,真正的多线程是指由多个cpu,多核,如果是模拟出来的多线程,在一个cpu的情况下,在同一个时间点,cpu只能执行一个代码,因为切换

2020-09-23 08:58:19 150

原创 小白都能懂的 玩转docker系列之网络连通

思考:tomcat01可以和tomcat-net-01能够ping通吗?[root@xiaoxiao ~]# docker run -d -P --name tomcat01 tomcatce201a447e4279378067ffb262ab5542e95d3aaf3a5a125e6871881d399a1710[root@xiaoxiao ~]# docker run -d -P --name tomcat02 tomcatbe24f0b905fba4da3bec81a4be3f1db3ca3.

2020-09-21 09:03:12 152

原创 小白都能懂的 玩转docker系列之 自定义网络

查看所有的docker网络网络模式:bridge: 桥接(默认)none: 不配置网络,一般不用host: 和宿主机共享网络container: 容器网络连通(用的少, 局限性大)测试:#--net bridge,是我们的docker0docker run -d -P --name tomcat01 --net bridge tomcat#docker0特定,默认,域名不连通,--link可以打通网络,可以自定义一个网络#创建自定义网络#--driver bridge[root@x

2020-09-21 08:55:46 238

原创 小白都能懂的 玩转docker系列之 Docker网络详解(超详细)

首先移掉之前所有的容器:[root@xiaoxiao tomcat]# docker rm $(docker ps -aq)fcfddcab1789[root@xiaoxiao tomcat]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES[root@xiaoxiao tom

2020-09-18 09:05:31 469

原创 小白都能懂的 玩转docker系列之实战练习docker流程小结

这个明天再写~

2020-09-17 09:09:51 118

原创 小白都能懂的 玩转docker系列之实战练习 Dockerfile制作tomcat镜像

首先在官网下载jdkhttps://www.oracle.com/java/technologies/javase-jdk15-downloads.html在官网下载tomcathttps://tomcat.apache.org通过xshell的fstp工具将两个压缩包传到我们的服务器上在我们服务器上查看,已经有了两个压缩包编写Dockerfile文件,Dockerfile是官方命名#dockerfile文件FROM centosMAINTAINER xiaoxiao<1502

2020-09-16 09:04:34 182

原创 小白都能懂的 玩转docker系列之dockerfile命令 CMD和ENTRYPOINT区别

CMD #指定这个容器运行时,需要运行的命令,只有最后一个生效,可替代ENTERPOINT #指定这个容器运行时,可以追加命令今天主要测试这两个命令的差异点#测试CMD#dockerfile文件[root@xiaoxiao dockerfile]# cat dockerfile-cmd-test FROM centosCMD ["ls", "-a"]#构建镜像[root@xiaoxiao dockerfile]# docker build -f dockerfile-cmd-tes

2020-09-15 09:01:24 201

原创 小白都能懂的 玩转docker系列之实战练习 构建自己的centos(详细)

这个明天补上

2020-09-14 09:14:21 116

原创 小白都能懂的 玩转docker系列之Dockerfile指令说明(简单说明)

先解释一下之前那张图:FROM #基础镜像,一切从这里开始构建MAINTAINER #镜像是谁写的,姓名+邮箱RUN #镜像运行时候需要执行的命令ADD #步骤,tomcat镜像,这个镜像压缩包,增加内容WORKDIR #镜像工作目录VOLUME #挂载目录EXPOSE #暴露端口CMD #指定这个容器运行时,需要运行的命令,只有最后一个生效,可替代ENTERPOINT #指定这个容器运行时,可以追加命令ONBUILD #当构建一个被继承dockerfile,运行

2020-09-14 08:52:30 356

原创 小白都能懂的 玩转docker系列之Dockerfile介绍

Dockerfile是用来构建docker镜像的文件,是一些命令行参数脚本构建的步骤:编写一个Dockerfile文件;docker build构建为一个镜像;docker run 运行镜像;docker push发不镜像(DockerHub,阿里云)今天先到这里~...

2020-09-11 09:30:43 124

原创 leetcode刷题篇 503题 下一个更大的元素II java版

先看题目:思路分析:这个题目有点绕,一开始很难想到用单调递减栈的方法,就是在入栈的时候一直会比较,会将元素最大的值放到栈底,否则出栈,然后这个会存下标,然后因为是循环队列,而且遍历时候,要遍历两倍数组长度,还是有点绕的,建议看完这个代码找点视频看,会清楚更多~看代码:class Solution { public int[] nextGreaterElements(int[] nums) { Stack<Integer> stack = new Stack&lt

2020-09-11 09:16:01 181

原创 小白都能懂的 玩转docker系列之 数据卷容器

数据卷容器:利用别的容器给容器共享数据多个mysql同步数据:启动3个容器,测试通过 --volume-from进行挂载,然后在docker01 创建了一个docker01的文件,发现同步到了docker02这里这个是启动docker02这个是在docker01里面新建了一个文件,发现同步到了docker02里面docker02挂载了docker01,那么docker01就称为数据卷容器再创建一个docker03,挂载docker01,然后在docker03新建一个文件,发现docke

2020-09-10 08:57:06 112

原创 leetcode刷题篇 697题 数组的度 java版

题目概览:思路分析:看代码:class Solution { public int findShortestSubArray(int[] nums) { HashMap<Integer, Integer> count = new HashMap<>(); HashMap<Integer, Integer> left = new HashMap<>(); HashMap<Integer, In

2020-09-09 23:29:48 183

原创 小白都能懂的 玩转docker系列之初识DockerFile

Dockerfile就是构建docker镜像的构建文件,是一些命令脚本通过这个脚本可以生成一个镜像,镜像是一层一层的,脚本是一个个命令,每个命令都是一层编写Dockerfile:[root@xiaoxiao home]# lsceshi mysql test.java xiaomin.java[root@xiaoxiao home]# mkdir docker-test-volume[root@xiaoxiao home]# lsceshi docker-test-volume my

2020-09-09 08:21:42 139

原创 小白都能懂的 玩转docker系列之 具名挂载和匿名挂载(超详细)

匿名挂载:-v 容器内路径docker run -d -P --name nginx01-v /etc/nginx nginx#测试[root@xiaoxiao ~]# docker run -d -P --name nginx02 -v /etc/nginx nginx958455f878b0a74737fe578f71bcca2962935270e6cdc49776923e568759cbda#通过volume查看本地所有的镜像,这些是匿名卷[root@xiaoxiao ~]# dock

2020-09-09 08:07:29 2488

原创 leetcode刷题篇 1109题 航班预订统计 java版 暴力和优化解法

先看题目思路分析:第一种方法就是暴力法,两个for循环,遍历,然后将预定数累加暴力法比较费时,竟然没有报超时还能进行优化:看代码class Solution { public int[] corpFlightBookings(int[][] bookings, int n) { int[] res = new int[n]; for (int i = 0; i < bookings.length; ++i) { for (

2020-09-08 08:59:24 364

原创 小白都能懂的 玩转docker系列之 Mysql同步数据

这个今天会更新的~

2020-09-07 09:00:39 152

原创 leetcode刷题篇 102题二叉树的层序遍历 java C++版本

先看题目:思路分析:两种思路,第一种是利用二叉树的层序遍历的方法,DFS,第一种是利用二叉树的深度遍历,DFS,通过记录二叉树的深度来区分是第几层,利用二叉树的前序遍历可以满足要求直接看代码:C++版,BFSclass Solution {public: vector<vector<int>> levelOrder(TreeNode* root) { return BFS(root); }private: vector&lt

2020-09-07 08:58:20 210

原创 leetcode刷题篇 21题合并两个排序的链表 java C++版本

题目放一下:思路分析:举例分析一波:l1和l2是要合并的两个链表,m是最后组合而成的链表上代码:首先是C++的:使用链表:class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode dummy(0); ListNode* tail = &dummy; while(l1 && l2) {

2020-09-06 17:24:19 241

原创 小白都能懂的设计模式 java版 单例模式

单例模式是每个程序员都很清楚的设计模式这里先介绍三种,饿汉式单例,懒汉式单例,静态内部类,直接code,比较清晰~饿汉式单例:package shejimoshi;//饿汉式单例public class HungrySingle { //可能会浪费空间 private byte[] data1 = new byte[2024*2024]; private byte[] data2 = new byte[2024*2024]; private byte[] dat

2020-09-04 08:52:03 163

原创 小白都能懂的 玩转docker系列之容器数据卷

容器数据卷:docker是将应用和环境打包一个镜像,如果数据都在容器中,容器删除后,数据会丢失,风险很大比如安装了mysql,希望mysql的数据能存在本地,希望容器之间可以有一个数据共享的技术卷技术就是将docker产生的数据,同步到本地,这就是目录的挂载,将我们容器中的目录,挂载在linux上面使用数据卷#方式一:使用命令挂载docker run -it -v 主机目录:容器目录#测试,将主机的/home/ceshi目录和容器中的/home目录挂载起来docker run -it -v

2020-09-03 09:03:10 111

原创 小白都能懂的设计模式 java版 设计模式初探

设计模式本质是面向对象设计原则的实际运用,是对类的封装性,继承性,多态性以及类的关联关系和组合关系充分理解主要分为3类:创建型模式:单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式结构性模式:适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式行为型模式:模板方法模式,命令模式,迭代器模式,观察者模式,等等我们这个系列博客会带大家学习一些常用的设计模式设计模式七大原则:开闭原则 : 对外扩展开放,对修改关闭里氏替换原则:继承保证超类的性质在子类中成立依赖倒置原

2020-09-02 08:58:59 153

原创 小白都能懂的 玩转docker系列之 commit镜像

docker commit #提交容器成为一个新的副本docker commit -m "提交信息" -a "作者" 容器id 目标镜像名,[tag]实战测试:#启动一个默认的tomcat[root@xiaoxiao ~]# docker run -it -p 8080:8080 tomcatUsing CATALINA_BASE: /usr/local/tomcatUsing CATALINA_HOME: /usr/local/tomcatUsing CATALINA_TMPDIR

2020-09-02 08:48:23 145

原创 小白都能懂的 玩转docker系列之 镜像原理以及分层理解

Docker镜像是什么?镜像是一种轻量级,可执行的软件包,所有的应用,直接打包docker镜像,可以直接跑起来得到镜像三种方式:从远程仓库下载朋友拷贝自己通过DockerFile制作一个镜像Docker 镜像加载原理UnionFS(联合文件系统),支持对文件系统的修改,作为一次提交一层层增加我们下载的时候,是一层层下载,比如要下载mysql和tomcat,两个都需要下载centos,如果mysql下载了centos,tomcat就不用再下载了,是公用的,不用重复下载UnionFS包含两个,

2020-09-01 09:02:30 208

空空如也

空空如也

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

TA关注的人

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