摘要:
1.SpringBoot 1.1 概念 SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另 阅读全文
posted @ 2020-08-07 11:35
湘北不会输的
阅读(319)
评论(0)
推荐(0)
摘要:
Spring 官网:https://spring.io/ 官网下载地址:https://repo.spring.io/release/org/springframework/spring/ GitHub:https://github.com/spring-projects/spring-framew 阅读全文
posted @ 2020-08-07 11:31
湘北不会输的
阅读(239)
评论(0)
推荐(0)
摘要:
初识 MySQL MySQL 是一种 关系型数据库管理系统(RDBMS) 开源 默认端口:3306 数据库语言 DDL:Data Definition Language 数据定义语言 DML:Data Manipulation Language 数据管理语言 DQL:Data Query Langu 阅读全文
posted @ 2020-08-07 11:29
湘北不会输的
阅读(178)
评论(0)
推荐(0)
摘要:
原子类也是 JUC 包下的:java.util.concurrent.atomic 包含四个原子类: AtomicInteger AtomicLong AtomicBoolean AtomicRefence Atomic Atomic 的四个类型 基本数据类型 数组类型 引用类型 对象的属性修改类型 阅读全文
posted @ 2020-08-07 11:19
湘北不会输的
阅读(110)
评论(0)
推荐(0)
摘要:
CAS 是什么? CAS (compare and swap) :: 比较并交换 如果期望的值达到了,那么就更新,否则,就不更新,CAS 是 CPU 的并发原语 unsafe 类 Java 无法操作内存,但是Java 可以调用 C++, C++ 可以操作内存。unsafe 相当于 Java 的后门, 阅读全文
posted @ 2020-08-07 11:17
湘北不会输的
阅读(157)
评论(0)
推荐(0)
摘要:
Volatile 是 Java 虚拟机提供的 轻量级的同步机制; volatile 关键字保证变量的可见性以及禁止了指令重排 保证可见性 不保证原子性 禁止指令重排 禁止指令重排 什么是指令重排 你写的程序,计算机并不是按照你写的那样执行 源代码 → 编译器优化的重排 → 指令并行也可能重排 → 内 阅读全文
posted @ 2020-08-07 11:09
湘北不会输的
阅读(103)
评论(0)
推荐(0)
摘要:
ForkJoin :: 分支合并 (JDK 1.7) 并行执行任务,提高效率。 使用场景:大数据量 将大任务拆成小任务 ForkJoin 特点:工作窃取 这个里面维护的都是双端队列,如果一方执行完了,获取另外一方的未完成的任务进行执行 ForkJoin 的操作 package pers.vincen 阅读全文
posted @ 2020-08-07 11:08
湘北不会输的
阅读(143)
评论(0)
推荐(0)
摘要:
什么是 Stream 流式计算 计算都应该交给流来操作! java.util.stream // 代码示例 package pers.vincent.matrix.subject.streamdemo; import java.util.Arrays; import java.util.List; 阅读全文
posted @ 2020-08-07 11:05
湘北不会输的
阅读(100)
评论(0)
推荐(0)
摘要:
新时代程序员:lambda 表达式、链式编程、函数式接口、Stream流式计算、(旧:泛型、枚举、反射) 函数式接口:只有一个方法的接口 @FunctionalInterface public interface Runnable { public abstract void run(); } // 阅读全文
posted @ 2020-08-07 11:04
湘北不会输的
阅读(135)
评论(0)
推荐(0)
摘要:
池化技术 程序的运行,本质:占有系统的资源!优化资源的使用 池化技术:事先准备好一些资源,有人要用,就过来取,用完之后还给我。 线程池的好处 降低资源消耗 提高响应的速度 方便管理 线程可复用,可以控制最大并发数,管理线程 线程池:三大方法 package pers.vincent.matrix.s 阅读全文
posted @ 2020-08-07 11:03
湘北不会输的
阅读(90)
评论(0)
推荐(0)
摘要:
BlockingQueue 使用场景:多并发处理,线程池 阻塞队列的使用 四组API 方式 抛出异常 有返回值,不抛异常 阻塞等待 超时等待 添加 add offer put offer( , , ) 删除 remove poll take poll( , ) 检测队列首部 element peek 阅读全文
posted @ 2020-08-07 11:02
湘北不会输的
阅读(67)
评论(0)
推荐(0)
摘要:
ReadWriteLock: 一个用于只读操作,一个用于写入操作;读的时候可以由多个线程进行,写的时候只能有一个。 读-读:可以共存 读-写:不可共存 写-写:不可共存 读锁:共享锁 写锁:独享锁 代码示例 package pers.vincent.matrix.subject.readwrite; 阅读全文
posted @ 2020-08-07 11:01
湘北不会输的
阅读(77)
评论(0)
推荐(0)
摘要:
CountDownLatch 减法计数器 代码测试 package pers.vincent.matrix.subject.callable; import java.util.concurrent.CountDownLatch; public class CountDownLatchDemo { 阅读全文
posted @ 2020-08-07 10:59
湘北不会输的
阅读(65)
评论(0)
推荐(0)
摘要:
@FunctionalInterface (函数式接口) public interface Callable返回结果并可能引发异常的任务。 实现者定义一个没有参数的单一方法,称为call 。 Callable接口类似于Runnable ,因为它们都是为其实例可能由另一个线程执行的类设计的。 然而,A 阅读全文
posted @ 2020-08-07 10:57
湘北不会输的
阅读(90)
评论(0)
推荐(0)
摘要:
List 不安全 List<String> list = new ArrayList<>(); List<String> list2 = Collections.synchronizedList(new ArrayList<>()); // CopyOnWrite 写入时复制; /** * Copy 阅读全文
posted @ 2020-08-07 10:56
湘北不会输的
阅读(70)
评论(0)
推荐(0)
摘要:
关于锁的8个问题 范例1: package pers.vincent.matrix.subject.lock8; import java.util.concurrent.TimeUnit; public class Test1 { public static void main(String[] a 阅读全文
posted @ 2020-08-07 10:54
湘北不会输的
阅读(81)
评论(0)
推荐(0)
摘要:
生产者和消费者问题:Synchronized 版 Synchronized:wait 、notify package pers.vincent.matrix.subject.juc; public class JucTest3 { public static void main(String[] a 阅读全文
posted @ 2020-08-07 10:53
湘北不会输的
阅读(80)
评论(0)
推荐(0)
摘要:
Lock 锁(*) 传统 synchronized package pers.vincent.matrix.subject.juc; public class JucTest1 { public static void main(String[] args) { // 获取CPU核数 // Syst 阅读全文
posted @ 2020-08-07 10:50
湘北不会输的
阅读(121)
评论(0)
推荐(0)
摘要:
在此之前呢,我们先对 JUC 有个简单了解:所谓 JUC 即 Java 的一个并发编程的类包:java.util.concurrent 包含有: java.util.concurrent.atomic java.util.concurrent.locks 进程 进程是一个程序,比如QQ、WeChat 阅读全文
posted @ 2020-08-07 10:48
湘北不会输的
阅读(98)
评论(0)
推荐(0)
摘要:
注解 注解:Java.Annotation Annotation 的作用 非程序本身,可以对程序做出解释 可以被其他程序读取 Annotation 的格式 "@注释名" (可带参数名) Annotation 使用范围 可附加在 package, class, method, field 等上面,可通 阅读全文
posted @ 2020-08-07 10:36
湘北不会输的
阅读(115)
评论(0)
推荐(0)

浙公网安备 33010602011771号