废话不多说,直接上正题。
Java多线程复习与巩固(二)--线程相关工具类的使用
系列文章:
- Java多线程复习与巩固(一)–线程基本使用
- Java多线程复习与巩固(二)–线程相关工具类的使用
- Java多线程复习与巩固(三)–线程同步
- Java多线程复习与巩固(四)–synchronized的实现
- Java多线程复习与巩固(五)–生产者消费者问题(第一部分)
- Java多线程复习与巩固(六)–线程池ThreadPoolExecutor详解
- Java多线程复习与巩固(七)–任务调度线程池ScheduledThreadPoolExecutor
- Java多线程复习与巩固(八)–原子性操作与原子变量
- Java多线程复习与巩固(九)–volatile关键字与CAS操作
- ThreadPoolExecutor最佳实践–如何选择线程数
- ThreadPoolExecutor最佳实践–如何选择队列
Java多线程复习与巩固(一)--线程基本使用
系列文章:
- Java多线程复习与巩固(一)–线程基本使用
- Java多线程复习与巩固(二)–线程相关工具类的使用
- Java多线程复习与巩固(三)–线程同步
- Java多线程复习与巩固(四)–synchronized的实现
- Java多线程复习与巩固(五)–生产者消费者问题(第一部分)
- Java多线程复习与巩固(六)–线程池ThreadPoolExecutor详解
- Java多线程复习与巩固(七)–任务调度线程池ScheduledThreadPoolExecutor
- Java多线程复习与巩固(八)–原子性操作与原子变量
- Java多线程复习与巩固(九)–volatile关键字与CAS操作
- ThreadPoolExecutor最佳实践–如何选择线程数
- ThreadPoolExecutor最佳实践–如何选择队列
密码学安全算法--对称加密算法
对称加密也称为常规加密、单钥加密,在非对称加密(公钥加密)开发之前是唯一使用的加密类型,直到现在,它也仍然是使用最广泛的加密类型之一。最常见对称加密算法是:DES、3DES、AES、RC4。
对称加密算法基本原理
先上图,对称加密工作过程
在整个工作过程中涉及到以下几个概念
- 明文:也就是原始信息或者说原始数据。也就是上图中的A。
- 加密算法:对明文进行各种替换或转换操作的一种算法。也就是①过程执行的算法。
- 密钥:密钥也是加密算法的输入,加密算法进行替换或转换的具体操作依赖于这个密钥。也就是上图中描述的密钥Key。
- 密文:经过加密算法打乱的消息输出。密文的输出取决于明文与密钥,对于相同的明文,不同的密钥会产生不同的密文。也就是上图中的B。
- 解密算法:本质上来说就是加密算法的逆过程,算法输入的是密文和加密时使用的同一密钥。
编码全解:从ASCII/ISO-8859/GB2312/GBK到Unicode的UCS-2/UCS-4/UTF-8/UTF-16/UTF-32
1、ASCII编码
为了能在电报、打印机、计算机等电信设备上进行信息交换,就必须为不同的设备制定统一的编码格式。早期的电信设备字符编码基本都是使用6位编码。1963年美国国家标准协会(ANSI)制定并公布的ASCII编码是第一个被广泛采用7位编码。
Windows上使用压缩包安装MYSQL
上个月在学校,好几个人过来叫我帮他们装MySQL,我说“你们可以到官网下个傻瓜式的安装向导,很简单,我这只有压缩包版的”,他们懒得下,我就用压缩包方式帮他们装。上次写过一篇在CentOS 7上安装MySQL的文章,索性把Windows上安装过程也写下来,对比一下。
下载Zip压缩包
Java Collection框架概述
[TOC]
JAVA集合框架可以是说是JAVA开发中使用次数最高的一套类,是JAVA对各种数据结构的实现。一个集合代表一组对象,使用集合框架可以独立于实现细节来操作这一组对象,而不用自己再造轮子。
单轴快排(SinglePivotQuickSort)和双轴快排(DualPivotQuickSort)及其JAVA实现
快速排序使用的是分治思想,将原问题分成若干个子问题进行递归解决。通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。