![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 70
P1um
这个作者很懒,什么都没留下…
展开
-
Java操作阿里云视频点播服务
一、主要学习 1.打开视频点播,文档&SDK 2. 引入依赖 官网教程 因为上传sdk包含了服务端的sdk,所以直接引入上传sdk即可 目前最新版本的是1.4.14 <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.5.1</version原创 2021-10-10 14:03:04 · 451 阅读 · 0 评论 -
Java内省Introspector
https://www.cnblogs.com/throwable/p/13473525.html转载 2021-08-18 11:27:39 · 78 阅读 · 0 评论 -
Java并发编程之ThreadLocal原理解析
1.ThreadLocal内部结构 1.1 常见误解 如果我们不去看源代码的话,可能会猜测ThreadLocal是这样子设计的: 每个ThreadLocal都创建一个Map,然后用线程作为Map的key,要存储的局部变量作为Map的value,这样就能达到各个线程的局部变量隔离的效果。这是最简单的设计方法,JDK最早期的ThreadLocal 确实是这样设计的,但现在早已不是了。 1.2 现在的设计 但是,JDK后面优化了设计方案,在JDK8中 ThreadLocal的设计是: 每个Thread维护一个T原创 2021-06-29 21:48:09 · 112 阅读 · 0 评论 -
Java并发编程之volatile
一、简介 volatile是java虚拟机提供的轻量级同步机制 作用是: 1.保证可见性 2.禁止指令重排 3.不保证原子性 二、并发编程的3个基本概念 1.原子性 定义: 即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。 原子性是拒绝多线程操作的,不论是多核还是单核,具有原子性的量,同一时刻只能有一个线程来对它进行操作。简而言之,在整个操作过程中不会被线程调度器中断的操作,都可认为是原子性。例如 a=1是原子性操作,但是a++和a +=1就不是原子性操作原创 2021-06-22 15:47:32 · 99 阅读 · 0 评论 -
java并发编程之Monitor、无锁、偏向锁、轻量级锁和重量级锁
一、Monitor 在理解monitor之前,先来了解一下Java对象头: 对象头 对象头是java中对象都具有的属性,是jvm在编译和运行阶段读取的信息。对象头包含三个部分: mark word 指针向类的指针 数组的长度(只有数组的对象用到) 以32位虚拟机为例: 1.概念 Monitor 被翻译为监视器或管程,可以理解为一个同步工具或一种同步机制,通常被描述为一个对象。每一个Java对象就有一把看不见的锁(C语言实现),称为内部锁或者Monitor锁。如果使用 synchronized原创 2021-06-22 13:19:14 · 1176 阅读 · 2 评论 -
SpringBoot Data操作Elasticsearch
1. 环境准备 1.springboot 2.2.5 2.elasticsearch v6.8.0 2.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency> 3.编写配置类 @Configurat原创 2021-05-10 19:15:08 · 394 阅读 · 0 评论 -
springboot+vue前后端分离整合shiro+jwt
0.实现逻辑 1.导入依赖 导入shiro-redis的starter包:还有jwt的工具包 <dependency> <groupId>org.crazycake</groupId> <artifactId>shiro-redis-spring-boot-starter</artifactId> <version>3.2.1</version> </dependency> <!-原创 2021-04-26 18:21:12 · 976 阅读 · 0 评论