自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 集合-目录

一、java集合(-)概述一、java集合(1)List--ArrayList/Vector/LinkedList一、java集合(2)Set--HashSet/TreeSet/LinkedHashSet一、java集合(3)Map--HashMap/HashTable/TreeMap/LinkedHashMap一、集合-HashMap--通过存取过程了解hashma...

2019-06-24 19:04:35 265

原创 十、设计模式(-)常用设计模式--以及23种全解析

一、23种设计模式设计模式一共可以分为23种,3大类:创建型Factory Method(工厂方法)https://blog.csdn.net/M_azed/article/details/91978020Abstract Factory(抽象工厂)https://blog.csdn.net/M_azed/article/details/91978020Builder(建造者)ht...

2019-06-18 10:58:37 223

原创 mysql 强制使用索引 FORCE INDEX(idx_name)

mysql 在查询时 如果查询语句中犹豫某些原因未使用到索引,导致查询很慢,可以强制使用索引。如EXPLAINSELECT cr.idFROM car_record cr LEFT JOIN camera c ON cr.camera_id=c.id LEFT JOIN pile p ON p.pile_id=c.pile_id LEFT JOIN station s ON c.station_id=s.station_id LEFT JOIN county co ON s.count

2021-04-13 16:14:34 5162

原创 非对称加密 RSA java的基本使用

1.RSA是什么RSA算法是最著名和可靠的非对称密钥加密算法。RSA中几个主要概念:①密钥对在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给他人的。公钥:公钥用来给数据加密,用公钥加密的数据只能使用私钥解密。私钥:用来解密公钥加密的数据。一般,公钥是要公布给他人(一人或多人)使用的,私钥由密钥对所有者持有,公钥加密的数据,私钥来解密,私钥加密的数据,公钥来解密,不能独自进行加密解密。②签名使用私钥对需要

2021-03-31 18:05:56 401

原创 docker 搭建私有网盘owncloud

最近看到一个私有网盘owncloud搭建起来非常简单,就试了一下,尤其是使用docker搭建,简单快捷,搭建完成之后,用了一下,很简洁,打算后续把自己家里的电脑插个硬盘,装个docker,搭建owncloud,存点电影啥的,用路由器做个映射,用起来就很方便了。下面来说一下操作过程1.安装docker略过(网上到处都是)2.拉取owncloud镜像docker pullowncloud默认会拉取 latest版本3.安装mysql(可不安装,owncloud建议使用my.

2021-03-23 17:00:33 3364 1

原创 mysql 自定义函数 递归查找父节点

1.问题描述:现有一树形机构数据表,只有子父关系,需找到每行数据 从本节点到跟节点的路径如:99AA 的 path 应该为 /99AA /A000的 path 应该为/99AA/A000/0100的 path 应该为/99AA/A000/0100/2.解决方案:写一个递归查询父节点的函数①创建函数向导②函数内容编写完成点保存,然后就可以用了CREATE DEFINER=`root`@`%` FUNCTION `getParentNodeList`..

2021-03-10 18:04:05 1823 1

原创 mysql group_concat 将一对多结果拼接成一行

1.问题描述:现有一对多的数据,想将多行数据拼成一行例如:期望:2.解决方法:使用mysql 的group_concatgroup_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])原查询:select * from national_industry_keyword目标查询:select t.id,t.code,t.name,GROUP_CONCAT(t.keyword).

2021-03-10 17:35:06 488

原创 docker如何启动容器并执行容器内脚本

1.问题描述:启动docker容器后,执行容器内脚本2.案例需求:现在需要用docker起一个centos7的环境,安装一个pyhton,跑一个定时任务,当时执行脚本。3.解决:开始尝试 使用systemctl 启动crond 执行pyhton项目脚本,结果docker容器中没有systemctl第二次尝试 写一个启动crond 的脚本,放到/etc/init.d目录下,docker容器启动后会执行该目录下脚本,但没有生效第三次写一个启动crond 的脚本,使用 dock..

2021-03-01 16:19:01 9171 6

原创 docker创建centos容器使用crond

记一次docker创建centos容器跑python任务案例1.需求描述:用docker起一个centos容器,在容器中安装python3,并定时执行脚本,将日志输出到某文件。将容器打成镜像导出,客户需将镜像导入。2.任务分解:①docker中使用crond②python执行脚本并输出日志③将容器打成镜像3.具体操作:①启动一个带有python的centos镜像为基础容器②将脚本拷入容器docker cp test.tar musing_shirley:/.

2021-02-25 17:00:14 1118

原创 连接池连接失效问题,mysql主动断开超时连接

1.问题描述:springboot连接mysql时,一段时间不适用,第一次使用会报如下错误:WARN 115584573 scheduling-1 com.zaxxer.hikari.pool.PoolBase:isConnectionAlive:176 HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@53794f79 (No operations allowed after connect

2021-02-25 16:24:34 1805

原创 drools规则引擎

drools规则引擎规则引擎是什么规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。Drools是一款基于java语言的开源规则引擎,基于RETE算法实现。引入规则引擎后带来的好处:一.实现业务逻辑与业务规则的分离,实现业务规则的集中管理;二.可以动态修改业务规则,从而快速响应需求变更;三.使业务分析人员也可以参与编辑、维护系统的业务规则;四.使用规则

2020-05-14 18:34:46 617

原创 六、Spring MVC 原理

Spring的模型-视图-控制器(MVC)框架是围绕一个DispatcherServlet 来设计的,这个Servlet 会把请求分发给各个处理器,并支持可配置的处理器映射、视图渲染、本地化、时区与主题渲染 等,甚至还能支持文件上传。一、MVC执行流程 一个请求匹配前端控制器DispatcherServlet的请求映射路径(在web.xml中指定), WEB 容器将该请求转交...

2019-08-08 12:28:57 190

原创 一、java基础--复制clone

将一个对象的引用复制给另外一个对象,一共有三种方式。第一种方式是直接赋值,第二种方式 是浅拷贝,第三种是深拷贝。所以大家知道了哈,这三种概念实际上都是为了拷贝对象。1. 直接赋值复制直接赋值。在Java中,A a1 = a2,我们需要理解的是这实际上复制的是引用,也就是 说a1和a2指向的是同一个对象。因此,当a1变化的时候,a2 里面的成员变量也会跟 着变化。2.浅复制(复...

2019-08-06 14:55:18 191

原创 二、多线程(7)AQS抽象队列同步器

AQS(java.util.concurrent.locks.AbstractQueuedSynchronizer)是用来构建锁或者其他同步组件(信号量、事件等)的基础框架类。JDK中许多并发工具类的内部实现都依赖于AQS,如ReentrantLock, Semaphore, CountDownLatch等等。学习AQS的使用与源码实现对深入理解concurrent包中的类有很大的帮助。一、作...

2019-08-05 15:22:16 127

原创 一、java基础--泛型

泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。比如我们要写一个排序方法, 能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,我们就可以使用Java 泛型。泛型有三种使用方式,分别为:泛型类、泛型接口、泛型方法一、泛型方法你可以写一个泛型方法,该方法在调用时可以接收不同类型的参数...

2019-08-02 18:41:41 656

原创 一、java基础--内部类

Java 类中不仅可以定义变量和方法,还可以定义类,这样定义在类内部的类就被称为内部类。根 据定义的方式不同,内部类分为静态内部类,成员内部类,局部内部类,匿名内部类四种一、静态内部类1. 静态内部类可以访问外部类所有的静态变量和方法,即使是private的也一样。2. 静态内部类和一般类一致,可以定义静态变量、方法,构造方法等。3. 其它类使用静态内部类需要使用“外部类.静态内部...

2019-08-02 17:53:49 186

原创 一、java基础--注解

目录一、概念1.注解①注解:②基本原则:③注解分类:2.元数据二、系统注解1.标准注解① @Override② @Deprecated③ @SuppressWarnings2.元注解① @Retention② @Target③ @Documented④ @Inhertied三、注解元素数据类型四、提取注解1.已知实现类...

2019-08-02 17:18:58 198

原创 一、java基础--反射

在 Java 中的反射机制是指在运行状态中,对于任意一个类都能够知道这个类所有的属性和方法; 并且对于任意一个对象,都能够调用它的任意一个方法;这种动态获取信息以及动态调用对象方 法的功能称为Java语言的反射机制。一、Java反射API反射 API用来生成 JVM中的类、接口或者对象的信息1. Class类:反射的核心类,可以获取类的属性,方法等信息。 2. Field...

2019-08-01 15:13:44 169

原创 版本管理工具--Git 常用命令

一、新入职公司的工作准备1.初始化用户信息2.初始化本地库3.初始化秘钥4.克隆公司项目二、工作常用命令1.文件提交①添加暂存②提交本地③从远程更新④提交远程⑤显示有变更的文件⑥查看该文件每次提交记录2.查看初始化信息3.分支操作①查看分支②切换指定分支③创建分支并提交到远程④合并分支4.解决冲突①放弃本地修改②...

2019-07-26 17:28:56 460

原创 一、java基础--异常Exception

如果某个方法不能按照正常的途径完成任务,就可以通过另一种路径退出方法。在这种情况下 会抛出一个封装了错误信息的对象。此时,这个方法会立刻退出同时不返回任何值。另外,调用 这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器。Throwable是 Java 语言中所有错误或异常的超类。下一层分为Error和Exception一、ErrorError类是指ja...

2019-07-26 16:07:46 217

转载 快捷开发-Lombok

1.简介及目录https://blog.csdn.net/weixin_41540822/article/details/866063702.@Cleanup & @NonNullhttps://blog.csdn.net/weixin_41540822/article/details/866066643.@Loghttps://blog.csdn.net/weixin...

2019-07-25 17:25:31 131

原创 常用算数类--Bigdecimal详解

在金融中,处理金额,基本类型往往不能满足对金额的操作,而Bigdecimal不仅包含了加减乘除等运算操作、比较操作,还有丰富的进位操作。现在,我们就从0开始,逐渐深入,了解它的一些常用方法//构造BigDecimal(int) 创建一个具有参数所指定整数值的对象。BigDecimal(double) 创建一个具有参数所指定双精度值的对象。BigDecimal(long)...

2019-07-25 17:06:05 642

原创 二、多线程(4)JUC并发包--atomic--AtomicInteger/AtomicIntegerArray...

具有原子/原子操作特征的类分类:基本类型:使用原子的方式更新基本类型AtomicInteger:整形原子类 AtomicLong:长整型原子类 AtomicBoolean :布尔型原子类数组类型:使用原子的方式更新数组里的某个元素AtomicIntegerArray:整形数组原子类 AtomicLongArray:长整形数组原子类 AtomicReferenc...

2019-07-12 16:48:47 163

原创 二、多线程(4)JUC并发包--collections--②CopyOnwrite(CopyOnWriteArrayList/Set)

一、概念线程安全的List :Vector 、Collections.synchronizedList(new ArrayList()) 、CopyOnWriteArrayList无论是Hashtable-->ConcurrentHashMap,还是说Vector-->CopyOnWriteArrayList。JUC下支持并发的容器与老一代的线程安全类相比,总结起来就是加锁...

2019-07-05 16:10:56 263

原创 二、多线程(4)JUC并发包--collections--①Queue(LinkedBlockingQueue/ArrayBlockingQueue)

在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。一、ConcurrentLinkedQueue非阻塞队...

2019-07-05 15:26:36 216

原创 二、多线程(4)JUC并发包--tools--CountDownLatch/CyclicBarrier/Semaphore/Executors/Exchanger

主要包含了 CountDownLatch , CyclicBarrier , Semaphore , Executors , Exchanger 等一.CountDownLatch一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。1.原理:CountDownLatch是通过一个计数器来实现的,计数器的初始值为线程的数量。每当一个线程完成了自己...

2019-07-05 15:20:10 257

原创 二、多线程(5)线程中的常用方法

Object和Thread类中, 为我们提供了操作线程的一些方法, 可以让我们对运行中的线程进行控制一、按归属分类类别 方法 简介 Object wait()/wait(long timeout)/wait(long timeout, int nanos) 让当前线程进入等待状态,并释放所持锁 notify()/notifyAll() 唤醒当前对象上的...

2019-07-04 18:32:45 122

原创 Docker(1)--Dockerfile

Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。我们使用 Dockerfile 定义镜像,依赖镜像来运行容器,因此 Dockerfile 是镜像和容器的关键,Dockerfile 可以非常容易的定义镜像内容。一、文件格式Dockerfile文件格式如下:## Docker...

2019-07-01 17:54:29 270

原创 Docker入门详解

一、什么是DockerDocker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中。1.优势①更快速的交付和部署开发者可以使用一个标准的镜像来构建一套开发容器,开发完成之后,运维人员可以直接使用这个容器来部署代码。 Docker 可以快速创建容器,快速迭代应用程序,并让整个过程全程可见,使团队中的其他成员...

2019-07-01 17:02:09 313

原创 六、SpringCloud入门详解

一、概念Spring Cloud是一系列框架的有序集合。将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务;Spring...

2019-06-28 17:17:36 206

原创 六、SpringBoot入门详解

一、概念Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置Spring Boot 是 Spring 的一套快速配置脚手架 Spring Boot专注于快速、方便集成的单个微服务个体 Spring Boot使用了默认大于配置的理念,很多集成方案已...

2019-06-28 16:10:15 167

转载 一、java基础--运算符

一、运算符的种类和优先级二、种类1.算术运算符2.赋值运算符3.比较运算符4. 逻辑运算符5.位运算符①&与运算& 参见运算的两位数都为1,&运算符结果才为1,否则就为0。②|或运算| 参与运算的两位都为0,|运算的结果才为0,否则就为1。③^异或运算^只有参加运算的两位不同,^运算...

2019-06-26 16:50:45 186

转载 分布式锁实现--Redis(Java)

分布式锁,是指在分布式的部署环境下,通过锁机制来让多客户端互斥的对共享资源进行访问。常见分布式锁的实现一般有三种方式:基于关系型数据库,如MySQL 基于缓存数据库,如Redis 基于Zookeeper此处对Redis如何实现分布式锁进行一下讲解一、实现原理主要利用Redis的几个特点:"SET key value [EX seconds] [PX millisecon...

2019-06-26 15:27:07 200

原创 一、java集合(3)Map--HashMap/HashTable/TreeMap/LinkedHashMap

目录MapSortedMapNavigableMapDictionary一、HashMap1.构造函数2.数据结构3.API4.源码5.遍历二、Hashtable三、TreeMap1.构造方法2.数据结构3.API4.遍历四、LinkedHashMap1.构造函数2.数据结构3.遍历:Map 是映射接口,Ma...

2019-06-24 18:56:49 313

原创 一、java集合(2)Set--HashSet/TreeSet/LinkedHashSet

目录一、HashSet二、TreeSet三、LinkedHashSetSet注重独一无二的性质,该体系集合用于存储无序(存入和取出的顺序不一定相同)元素,值不能重 复。对象的相等性本质是对象hashCode值(java是依据对象的内存地址计算出的此序号)判断 的,如果想要让两个不同的对象视为相等的,就必须覆盖Object的hashCode方法和equals方 法。Set ...

2019-06-24 17:07:30 249

原创 一、java集合(1)List--ArrayList/Vector/LinkedList

目录一、ArrayList二、LinkedList三、ArrayList与LinkedList的区别1.存取性能2.功能性3.集合遍历有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。与 set 不同,列表通常允许重复的元素。常...

2019-06-24 16:08:34 197

原创 一、java集合(-)概述

一、继承结构集合类存放于Java.util包中,主要有3种:set(集)、list(列表包含Queue)和map(映射)。1.Collection:Collection是集合List、Set、Queue的最基本的接口。2. Iterator:迭代器,可以通过迭代器遍历集合中的数据3. Map:是映射表的基础接口二、实现类三、collection接口是集合类的...

2019-06-21 17:30:34 329

原创 四、mybatis(-)springboot整合注解方式

一、springboot整合1.maven依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <v...

2019-06-20 18:40:16 152

原创 二、多线程(4)JUC并发包

学习是一个循序渐进的过程, 就像一部手机, 我们开始接触他的时候只是学怎么用, 慢慢的用多了, 就会如何做一些设置 , 清理垃圾让他运行的更流畅了, 等手机屏幕碎了, 电池坏了, 自己也学会换配件了, 再后来通过看一些手机新机测试机构的视频, 都了解了手机的内部构造了. 学习一个东西也是如此, 时间越长认识越全面越深入, 目前尽量做一个目录和简介, 希望以后再回过头来丰富完善这些知识....

2019-06-19 18:32:20 303

转载 十、设计模式(23)访问者模式(Vistor)

源文作者:作者:朱小厮来源:CSDN原文:https://blog.csdn.net/u013256816/article/details/50975438访问者模式表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作,一旦这些操作需要修改的话,接受这个操作的数据结构...

2019-06-18 10:42:44 213

空空如也

空空如也

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

TA关注的人

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