自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 类加载器如何加载项目中相同的类

最近在面试中遇到一道问题,把我问得有点蒙蔽。这个问题是这样的,现在有一个WAR包,我们定义了一个类A,然后这个WAR包引用了一个JAR包,也有一个类A,两个类A全限定名相同,那么xu'ni

2021-05-28 00:13:08 4050

原创 jvm学习——jvm内存区域

前言jvm是java为了实现一次编译多处运行的秘籍,在jvm里面抽象出来了一个虚拟的机器,jvm为自己设计了一套内存模型——堆、栈、本地方法栈、方法区、程序计数器一、堆Java堆是虚拟机中生产和管理对象的一块儿内存。几乎所有的对象会在堆内存上进行创建,同时堆内存也会对这些内存进行管理,对于大部分的对象都是朝生夕灭。堆内存中需要一些算法来清理这些内存。其中较为人知的包括对象标记算法——可达性分析。为了更好地回收内存,堆内存的分带管理,对于堆内存分为edan, from suviver, to suv

2020-12-06 21:14:58 186

原创 jdk学习——ConcurrentHashMap

在HashMap的基础上,继续学习ConcurrentHashMap,其利用到基本原理是,将哈希表中的锁竞争分段到每一个节点。而并不是将整个哈希表锁住。**在JDK8之前,ConcurrentHashMap 的实现是让每一个节点持有一个锁**,然后当访问对应节点的时候,则使用这个锁只锁住一个节点而不是整个哈希表。这个理念与Innodb希望用行锁取代表锁提高并发量很类似。```java static class Segment<K,V> extends ReentrantLock implements

2020-12-06 14:03:42 210 1

原创 jdk学习——HshMap

1. 基本数据结构HashMap的底层数据结构是一个Hsah表,哈希表允许Java通过一个Hash函数将一个对象映射到一个数组的索引上,从而达到近似O(1)的访问和插入效率。那么Hash表的底层就是一个数组和一个哈希函数。...

2020-12-05 00:48:22 207

原创 jdk学习——ThreadLocal

重点:① 在ThreadLocal中存储的变量每个线程独有② ThreadLocal中数据结构存储形式是,在每个线程中放置了一个Map存储当前线程所有的静态变量,而不是在ThreadLocal中放置了一个Map来存储所有线程的私有变量,这样有利于在线程回收之后回收ThreadLocal③ ThreadLocalMap中解决Hash冲突的方式是逐位向后探测空位④ 在进行操作的时候,ThreadLocal会顺便清理失效的弱引用⑤ 在清理失效节点的时候,会尝试调整哈希值到正确的索引槽位,但是不一定会成功

2020-11-28 20:00:38 77

原创 一次简单性能优化的实践

线程不是越多越好,线程会被数据库连接阻塞@Componentpublic class ThreadPoolTest { @Autowired private DataSource dataSource; private final static ExecutorService EXECUTOR_SERVICE = new ThreadPoolExecutor( ...

2020-04-07 00:23:08 132

原创 Spring AOP学习

Spring AOP学习概述静态与动态Java的AOP实现机制AOP的几大角色基本实现适用案例概述软件开发的目的是为了解决各种真实场景的业务和系统需求。面向对象能对现实世界能够对代码结构进行地抽象与封装,让系统有很好地模块化,扩展性和可维护性。需求与具体实现之间的关系上一对一,但是在系统开发过程中往往会存在一些切面,切面通常与系统逻辑无关,是面向多个或者所有的需求线的一个面。现在我们需要一...

2020-03-30 00:06:24 125

原创 HashMap工具类

一个HashMap的工具类, 包含简单的创建, 简单的分组, 简单分组后的获取public class MapUtils { /** * 通过一个键值对创建一个HashMap * @param key 键 * @param value 值 * @param <K> 键的类型 * @param <V> 值的类型 ...

2019-12-14 12:15:32 924

原创 jQuery.ajax学习

1.基本简介ajax是一种在浏览器异步请求网络并刷新界面元素的技术方案。ajax全名为Asynchronous Javascript And XML,即为异步的js和xml。同时,ajax不是jQuery的技术,而是jQuery提供了一种ajax的建单的解决方案,除了使用jQuery做ajax请求之外,我们亦可以使用axios,fetch,或者原生的XMLHTTPRequest对象本文集中探...

2019-03-19 15:27:46 238

原创 jQuery使用promise处理ajax

ajax是一种支持异步刷新的前端技术,让网页的一部分请求可以只刷新来减少网络io和网页的加载来提高效率和体验。jQuery是一个优秀的js类库,对ajax进行了很好的封装,通常对于很多服务端的项目都使用jQuery来进行ajax请求,不需要引入一些前端的大型框架和工具。//一个简单的ajax实例,以及几个重要的参数$(function () { $.ajax({ ...

2019-03-14 01:21:41 5329

原创 python连接mysql,不同数据库连接数据不同步——MySQLl默认隔离级别,可重复读

py代码from rank_utils import get_connect, closeconn1,cur1 = get_connect() # 数据库连接1conn2,cur2 = get_connect() # 数据库连接2for _ in range(0,2): cur1.execute("select * from test where mark = 0"...

2019-02-17 15:44:26 398

原创 实习记录2 springboot应用中启动tomcat容器

123

2019-01-18 21:53:00 164

原创 实习记录1——数据库查询n+1.使用字符串在服务间传递任意文件

实习笔记1规避数据库会产生的1+n查询1.直接使用mybatis配置的1+n查询2.拆分成两次查询的 1+m次查询3.最好的方式,使用sql的子查询,1次查询使用Base64字符串在服务之间传递任意的文件1.服务方将文件上传到文件服务器2.服务方将文件需要数据传输到前端,然后在前端生成文件通过io流将文件传输到页面3.服务方通过将文件的byte流通过base64编码成一个巨型字符串,然后将这个巨型...

2018-12-23 19:44:22 130

空空如也

空空如也

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

TA关注的人

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