自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaSE之JUCStream流式计算

1、Stream流式计算package com.coding.stream;import java.util.Arrays;import java.util.List;// 数据库、集合 : 存数据的// Stream:计算和处理数据交给 Streampublic class StreamDemo { /** * 按条件用户筛选: * 1、id 为偶数 * 2、年龄大于24 * 3、用户名大写 映射 * 4、用户名倒排序

2020-05-31 23:11:58 113

原创 JavaSE之JUC函数式接口

四个函数式接口java.util.function所有的函数式接口都可以用来简化编程模型: 都可以使用lambda表达式简化!/** * Java 8 * * Function : 有一个输入参数有一个输出参数 * Consumer:有一个输入参数,没有输出参数 * Supplier:没有输入参数,只有输出参数 * Predicate:有一个输入参数,判断是否正确! */1.Function : 有一个输入参数有一个输出参数package com.coding.funcatio

2020-05-31 22:17:55 119

原创 JavaSE之JUC线程池

线程池1.池化技术程序运行的本质:占用系统资源! 提高程序的使用率,降低我们一个性能消耗线程池、连接池、内存池、对象池 …为什么要用线程池:线程复用2.线程池属性三大方法、七大参数、4种拒绝策略a.三大方法package com.coding.pool;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class ThreadPoolDemo01 {

2020-05-31 22:06:55 169

原创 JavaSE之JUC阻塞队列

阻塞队列队列 : FIFO ,先进先出栈:Stack,后进先出1.阻塞:什么情况下肯定会阻塞!2.为什么要使用阻塞队列:很多人写多线程程序的时候,线程之间的通信,他不关心唤醒!阻塞队列!List、Set 和 BlockingQueue :四组API方法第一组会抛出异常返回一个布尔值,不会抛出异常延时等待一直等待插入add()offer(e)offer(e,time)put()取出remove()poll()poll(time)take

2020-05-31 21:08:16 134

原创 JavaSE之JUC读写锁

读写锁读写锁定义:示例package com.coding.rwlock;import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;import java.util.HashMap;import java.util.HashSet;import java.util.Map;import java.util.concurrent.locks.ReadWriteLock;import java.util.concurr

2020-05-31 20:06:12 195

原创 JavaSE之JUC不安全的集合类

不安全的集合类只要是并发环境,你的集合类都不安全(List、Map、Set)1. list 不安全package com.coding.unsafe;import java.util.*;import java.util.concurrent.CopyOnWriteArrayList;/** * 故障现象:ConcurrentModificationException 并发修改异常 * 导致原因:add方法没有锁! * 解决方案: * 1、List<String> lis

2020-05-31 18:03:21 135

原创 JavaSE之8锁现象线程彻底理解锁

8锁现象线程彻底理解锁利用8道题,搞定锁这个概念!1.问题一package com.coding.lock8;import java.util.concurrent.TimeUnit;/*1、标准的访问情况下,先执行 sendEmail 还是 sendSMS 答案:sendEmail 被 synchronized 修饰的方式,锁的对象是方法的调用者,所以说这里两个方法调用的对象是同一个 先调用的先执行! */public class LockDemo01 {

2020-05-31 16:09:02 184

原创 JavaSE之JUC基础

Juc并发编程1、什么是JUCJUC:Java原生的并发包,和一些常用的工具类!2、线程基础知识回顾什么是进程和线程?进程:QQ.exe线程:打字、自动保存…一个进程可以包含多个线程,一个进程至少有一个线程! Java程序至少有两个线程: GC、Main并发、并行并发:多个线程操作同一个资源,交替执行的过程!并行:多个线程同时执行!只有在多核CPU下才能完成!所以我们使用多线程或者并发编程的目的:提高效率,让CPU一直工作,达到最高处理性能!线程有几种状态线程有 6

2020-05-31 16:05:54 199

原创 Maven使用

Maven为什么要学习maven1.在实际的Java开发中,需要使用大量的jar包,人工导入和维护非常麻烦2.maven工具将复杂的jar包管理工作自动化和配置,极大地节省维护jar包成本1.Maven项目架构管理工具Maven核心思想:约定大于配置2.下载安装mavendownload地址:https://maven.apache.org/download.cgi解压开箱即用3.配置环境变量在系统环境变量中,配置如下配置:M2_HOME:maven目录下的bin目录MAVEN

2020-05-30 21:26:11 118

原创 JavaSE之线程通信

线程通信应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,知道仓库中的产品被消费者取走为止如果仓库中没有产品,则消费者可以将产品取走消费,否则停止消费并等待,知道仓库中再次放入产品为止1.线程通信-分析生产者和消费者共享同一个资源,并且生产者和消费者之间互相依赖,互为条件对于生产者,没有生产产品之前,要通知消费者等待,而生产了产品之后,又需要马上通知消费者消费

2020-05-30 16:20:25 195

原创 JavaSE之线程锁

线程锁1.死锁a.死锁概念多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形,某一个同步块同时拥有“两个以上对象的锁”时,就可能会发生死锁问题代码示例package thread.lock;//死锁:多个线程互相抱着对方需要的资源,然后形成僵持public class DeadLock { public static void main(String[] args){ Makeup tes

2020-05-30 14:45:15 99

原创 JavaSE之线程同步和安全问题

线程同步多个线程操作同一个资源并发:同一个对象被多个线程同时操作1.线程同步处理多线程问题时,多个线程访问同一个对象,并且某些线程还想修改这个对象,这个时候我们就需要线程同步,线程同步其实就是一种等待机制,多个需要同时访问此对象的线程进入这个对象的等待池,形成队列,等待前面线程使用完毕,下一个线程再使用由于同一进程的多个线程共享同一块存储空间,再带来便利的同时,也带来了访问冲突问题,为了保证数据再方法中被访问时候的正确性,在访问时加入锁机制synchronized,当一个线程获得对象的排它锁

2020-05-30 11:35:19 188

原创 JavaSE之线程状态和操作

JavaSE之线程1.线程的状态和方法a.线程的状态线程状态变迁过程线程状态枚举public enum State { /** * Thread state for a thread which has not yet started. */ NEW, /** * Thread state for a runnable thread. A thread in the runnable

2020-05-30 10:05:54 137 1

原创 JavaSE之Lambda表达式

Lambda表达式1.Lambda表达式定义理解Functional Interface(函数式接口)是学习lambda表达式的关键函数接口的定义:1.任务接口,如果只包含唯一一个抽象方法,那么它就是一个函数式接口2.对于函数式接口,我们可以通过lambda表达式来创建该接口的对象2.为什么要使用lambda表达式避免匿名内部类定义过多可以让代码更加简洁去掉一些没有意义的代码,只留下核心代码3.Lambda表达式推导a.定义函数式接口,实现类来创建该接口的对象package

2020-05-29 20:08:49 156

原创 JavaSE之多线程实例以及线程安全问题分析

Java多线程1.多线程实现实例1.继承Thread类实现多线程下载图片**ps:**依赖commons-io-2.6.jarpackage thread;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;//s实现多线程同步下载图片public class TestThread02 extends Thread{

2020-05-29 10:42:42 116

原创 JavaSE之多线程

Java线程1.线程理解a.线程简介线程(thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。服务器运行的最小单位是进程process单核CPU处理计算的最小单元是线程thread一个进程至少有一个线程,很多的进程都有多个线程,如java至少有一个main主线程和一个GC回收线程b.Process和Thread程序是指令和数据的有序集合,其本身

2020-05-29 10:20:03 99

原创 Java反射如何操作泛型

Java反射操作泛型1.Java泛型Java采用泛型擦除机制来引入泛型,Java中的放行仅仅是给编译器javac使用的,确保数据的安全性二号免去强制类型转换问题,但是一旦编译完成,所有和泛型有关的类型会全部擦除2.通过反射操作泛型为了通过反射操作这些类型,java新增了ParameterizedType,GenericArrayType,TypeVariable和WildcardType几种类型来代表不能被归一到class类中的类型但是又和原始类型齐名的类型ParameterizedType:表

2020-05-28 10:27:07 510

原创 Java如何获取和使用运行时类的完整结构

Java获取运行时类的完整结构1.通过反射获得运行时类的完整结构Field,Method,Constructor,Superclass,Interface,Annotation实现的全部接口所继承的父类全部的构造器全部的方法全部的Field注解…2.有了Class对象,能做什么?1.创建类的对象:调用Class对象的newInstance()方法类必须有一个无参数的构造器类的构造器的访问权限需要足够2.没有无参构造器如何创建对象只要在操作的时候明确的调用类的构造器,并将

2020-05-28 10:17:58 468

原创 Java类在JVM中加载深入理解

类的内存分析1.什么时候会发生类初始化?1.类的主动引用(一定会发生类的初始化)当虚拟机启动,线初始化main方法所在的类new一个类的对象调用类的静态成员(除了了final常量)和静态方法使用java.lang.reflect包的方法对类进行反射调用当初始化一个类,如果父类没有被初始化,则会先初始化它的父类2.类的被动应用(不会发生类的初始化)当访问一个静态域时,只有真正声明这个给域的类才会被初始化。如:当通过子类引用父类的静态变量,不会导致子类初始化通过数组定义类引用,不会触发

2020-05-26 11:00:47 152

原创 sql使用基础

Mysql基础1.limit使用select * from tableName limit i,n# tableName:表名# i:为查询结果的索引值(默认从0开始),当i=0时可省略i# n:为查询结果返回的数量# i与n之间使用英文逗号","隔开limit n 等同于 limit 0,n-- for instance# 查询10条数据,索引从0到9,第1条记录到第10条记录select * from t_user limit 10;select * from t_user li

2020-05-25 17:32:03 196

原创 Java注解和反射

Java注解和反射1.注解import java.lang.annotation.*;public class Test03 { @MyAnnotation(name = "michael") public void testMethod(){ } @MyAnnotation public void testMethod02(){ } @MyAnnotation02(1) public void testMethod03(){

2020-05-24 22:22:01 179

原创 Kubernetes入门到精通(三)-Kubernetes实战

Kubernetes入门实战1、部署一个应用Kubernetes 部署在 k8s 上进行部署前,首先需要了解一个基本概念 DeploymentDeployment ( 部署)。在k8s中,通过发布 Deployment,可以创建应用程序 (docker image) 的实例 (docker container),这个实例会被包含在称为 Pod 的概念中,Pod 是 k8s 中最小可管理单元。在 k8s 集群中发布 Deployment 后,Deployment 将指示 k8s 如何创建

2020-05-24 13:23:35 1030

原创 Kubernetes入门到精通(二)-Kubernetes安装

Kubernetes安装1、所有节点前置环境配置 centos 版本为 7.6 或 7.7、CPU 内核数量大于等于 2,且内存大于等于 4G hostname 不是 localhost,且不包含下划线、小数点、大写字母 任意节点都有固定的内网 IP 地址(集群机器统一内网) 任意节点上 IP 地址 可互通(无需 NAT 映射即可相互访问),且没有防火墙、安全组隔离 任意节点不会直接使用 docker run 或 docker-compose 运行容器。Pod#关闭防火

2020-05-24 13:11:55 249

原创 Kubernetes入门到精通(一)

一、入门一、背景1、背景介绍Docker:容器化应用。docker 跨平台性。docker启动的容器,做的镜像,具有跨平台性Kubernetes 是用于自动部署,扩展和管理容器化应用程序的开源系统。K8s编排容器化应用。编排基础设施。100台服务器Docker Swarm:50台大规模的集群管理。k8s;K8s的底层环境可以使用 Docker。eg:k8s编排的应用。100台。流量大了以后,自动的扩缩容。HPA自愈。概念概述Kubernetes 是什么?Kubernetes 组件

2020-05-24 13:02:29 1255

原创 CICD之Jenkins使用

一、Jenkins1、Docker安装Jenkins1.docker安装docker run \ -u root \ -d \ -p 8080:8080 \ -p 50000:50000 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ jenkinsci/blueocean2.可选镜像 jenkins/jenkins:lts#可选镜像 jenkin

2020-05-23 22:25:44 452

原创 CICD之DevOps简介

一、DevOps1、什么是DevOpsDevelopment和Operations的组合词;DevOps循环节奏DevOps: Development 和 Operations 的组合DevOps 看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、 发布更加快捷、频繁和可靠。DevOps 希望做到的是软件产品交付过程中 IT 工具链的打通,使得各个团队减少时间损 耗,更加高效地协同工作。专家们总结出了

2020-05-23 22:13:22 467

原创 Mysql执行full join报错

Mysql执行full join报错,但是left(right) join是可以的1.问题现象2.报错信息[SQL]select * from integral_cycle_summary full join expire_cycle on integral_cycle_summary.integral_account_id=expire_cycle.integral_account_id [Err] 1054 - Unknown column 'integral_cycle_s

2020-05-22 11:43:00 1100

原创 Python一键安装项目的所有依赖教程

Python一键安装所有依赖1.导出项目的所有依赖导出命令#export to requirements.txtpip freeze > requirements.txt #文件保存在当前目录导入文件内容依赖packages 名称和版本2.在新的工作空间一键安装使用pip install 安装文件中指定的依赖pip install -r requirements.txt3.实际项目中小建议1.建议在完成新项目的开发后将项目中的依赖先导出来,和实际项目一起归档到版本库中。

2020-05-21 11:16:31 3753

原创 Python安装依赖问题以及解决办法系列

1.安装ruamel包报错1.问题现象:2.报错信息:#install errorCould not find a version that satisfies the requirement ruamel (from versions: )No matching distribution found for ruamel3.问题原因在PyPI中搜索ruamel,无法搜索到名称为ruamel的包。所有可用的包都将该字符串作为命名空间(ruamel.)。你必须选择你想要安装的每个包(尽管有

2020-05-21 10:42:59 2021

原创 Docker进阶五-Idea整合docker插件

Idea整合docker插件1、idea快速整合使用idea提供了docker plugin可以用例构建镜像和远程拉起容器1、 Docker开启远程访问#修改该Docker服务文件vi /lib/systemd/system/docker.service#修改ExecStart这行,将原来注释,加上这个命令ExecStart=/usr/bin/dockerd -H tcp://0.0...

2020-05-07 10:31:47 290

原创 Docker进阶四-Dockerfile详解03

Dockerfile区分一些易混淆的指令1、USER 执行cmd等之类命令的使用那个用户alpine sudo gosuFROM centosRUN groupadd -r abc && useradd -r -g abc aaaUSER aaaCMD whoami# CMD 就是容器启动以后要执行的命令2、ARG、ENVThe ARG instruc...

2020-05-06 21:09:19 448

原创 Docker进阶三-Dockerfile详解02

Dockerfile详解1、DockerfileDockerfile由一行行命令语句组成,并且支持以#开头的注释行。一般而言,Dockerfile可以分为四部分基础镜像信息 维护者信息 镜像操作指令 启动时执行指令指令说明FROM指定基础镜像MAINTAINER指定维护者信息,已经过时,可以使用LABEL maintainer=xxx 来替代RUN运...

2020-05-06 21:02:32 203

原创 Docker进阶二-Dockerfile详解01

Dockerfile详解1、DockerfileDockerfile指南:https://docs.docker.com/engine/reference/builder/问题: nginx。tomcat。mysql。镜像从哪里来?我们自己如何做一个镜像。微服务。SpringBoot。上云部署。最方便是Docker。微服务打包成镜像。任何装了Docker。都可以下载使用。应用–>...

2020-05-06 20:56:29 313

原创 Docker进阶二-网络详解

docker网络详解1、网络高级Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为在同一宿主机内的容器都接入同一个网桥,这样容器之间就能够通过容器的Container-IP直接通信。​ ...

2020-05-06 20:51:18 197

原创 Docker进阶一-docker仓库

Docker仓库待补充搭建私有仓库

2020-05-06 20:46:03 104

原创 Docker实战之Nginx&RabbitMQ

安装Nginx&RabbitMQ1、安装Nginx随便启动一个 nginx 实例, 只是为了复制出配置docker run -p 80:80 --name nginx -d nginx:1.10将容器内的配置文件拷贝到当前目录:mkdir -p /idata/nginx/confdocker container cp nginx:/etc/nginx/. /idata...

2020-05-06 20:15:10 381

原创 Docker实战之ElasticSearch

安装ElasticSearch1、安装ElasticSearchmkdir -p /idata/es/configmkdir -p /idata/es/dataecho "http.host: 0.0.0.0" >> /idata/es/config/elasticsearch.ymlchmod -R 777 /idata/es/ #保证权限docker run --nam...

2020-05-06 20:03:36 167

原创 Docker实战之Redis

Redis实战1、安装Redismkdir -p /idata/redis/conftouch /idata/redis/conf/redis.confdocker run -p 6379:6379 --name redis -v /idata/redis/data:/data \-v /idata/redis/conf:/etc/redis \-d redis:5.0.9-alpi...

2020-05-06 19:59:47 194

原创 Docker实战之MySQL

Docker实战1、安装MySQLdocker run -p 3306:3306 --name mysql \-v /idata/mysql/log:/var/log/mysql \-v /idata/mysql/data:/var/lib/mysql \-v /idata/mysql/conf:/etc/mysql \-e MYSQL_ROOT_PASSWORD=root \-d ...

2020-05-06 19:55:05 156

原创 Docker基础三-容器互联

Docker容器互联1、端口映射docker create -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name hello-mysql mysql:5.7-p HostPort:ContainerPort | IP:HostPort:ContainerPort | HostPort:ContainerPort查看端口映射docker ...

2020-05-06 19:46:58 184

空空如也

空空如也

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

TA关注的人

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