08 2021 档案

摘要:ApplicationContext Spring的核心,Context我们通常解释为上下文环境。ApplicationContext则是应用的容器。 Spring把Bean(object)放在容器中,需要用就通过get方法取出来。在ApplicationContext接口的众多实现类中,有3个是我 阅读全文
posted @ 2021-08-31 16:39 精进的浩然兄 阅读(328) 评论(0) 推荐(0) 编辑
摘要:BeanPostProcessor 是Spring框架核心接口之一。 了解这个接口的作用对于我们详细了解Spring框架bean加载顺序十分重要。 Spring中Bean的实例化过程图示 BeanPostProcessor接口源码 public interface BeanPostProcessor 阅读全文
posted @ 2021-08-30 16:24 精进的浩然兄 阅读(946) 评论(1) 推荐(0) 编辑
摘要:数据库有读写锁、Java也有自己的读写锁。 数据库读写锁如下:mysql 共享锁与排他锁 synchronized和ReentrantLock的对比 到现在,看到多线程中,锁定的方式有2种:synchronized和ReentrantLock。两种锁定方式各有优劣,下面简单对比一下: 1、synch 阅读全文
posted @ 2021-08-27 16:22 精进的浩然兄 阅读(632) 评论(0) 推荐(0) 编辑
摘要:1. 引言 当我们点击某个杀毒软件的取消按钮来停止查杀病毒时,当我们在控制台敲入quit命令以结束某个后台服务时……都需要通过一个线程去取消另一个线程正在执行的任务。Java没有提供一种安全直接的方法来停止某个线程,但是Java提供了中断机制。 如果对Java中断没有一个全面的了解,可能会误以为被中 阅读全文
posted @ 2021-08-26 15:41 精进的浩然兄 阅读(196) 评论(0) 推荐(0) 编辑
摘要:JMM即为JAVA 内存模型(java memory model)。 JMM是一个抽象模型,它是建立在不同的操作系统和硬件层面之上,对问题进行了统一的抽象。 因为在不同的硬件生产商和不同的操作系统下,内存的访问逻辑有一定的差异,结果就是当你的代码在某个系统环境下运行良好,并且线程安全,但是换了个系统 阅读全文
posted @ 2021-08-25 11:32 精进的浩然兄 阅读(93) 评论(0) 推荐(0) 编辑
摘要:对象属性初始化 声明属性时初始化 在初始化块中初始化 在构造方法中初始化 执行顺序 : 最先执行的是在定义属性时初始化的内容,再次是初始化块中对属性的初始化,最后是执行在构造方法中属性的初始化。 类属性初始化 声明该属性的时候初始化 静态代码块初始化 执行顺序 :按照编写顺序执行。 final变量的 阅读全文
posted @ 2021-08-25 10:42 精进的浩然兄 阅读(261) 评论(0) 推荐(0) 编辑
摘要:队列就是存放元素的容器,FIFO。 所谓阻塞,在某些情况下会挂起线程(即阻塞),一旦条件满足,被挂起的线程又会自动被唤起。 阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当队列满时,存储元素的线程会等待队列可用 阅读全文
posted @ 2021-08-23 11:17 精进的浩然兄 阅读(107) 评论(0) 推荐(0) 编辑
摘要:同步调用、回调和异步调用。 同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用; 回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口; 具体说来:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法, 异步调用是 阅读全文
posted @ 2021-08-20 15:24 精进的浩然兄 阅读(2637) 评论(0) 推荐(0) 编辑
摘要:TPS 和 QPS TPS:Transaction Per Second, 每秒事务数, 是衡量系统性能的一个非常重要的指标。 具体事务的定义,都是人为的,可以一个接口、多个接口、一个业务流程等等。一个事务是指事务内第一个请求发送到接收到最后一个请求的响应的过程,以此来计算使用的时间和完成的事务个数 阅读全文
posted @ 2021-08-19 10:42 精进的浩然兄 阅读(2801) 评论(0) 推荐(0) 编辑
摘要:java8,作为一个从java5以来最具革命性的版本。 lambda表达式和 stream 是自Java语言添加泛型(Generics)和注解(annotation)以来最大的变化。 java8中一个非常重要的特性就是lambda表达式,我们可以把它看成是一种闭包,它允许把函数当做参数来使用,是面向 阅读全文
posted @ 2021-08-18 11:20 精进的浩然兄 阅读(85) 评论(0) 推荐(0) 编辑
摘要:概述 Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。 Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。 这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合 阅读全文
posted @ 2021-08-17 10:55 精进的浩然兄 阅读(157) 评论(1) 推荐(0) 编辑
摘要:空指针异常 Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) —— 每个 Java 程序员都非常了解的异常。 本质上,这是一个包含有可选值的包装类,这意味着 Optional 类既可以含有对象也可以为空。 Optional 是 Java 实现函数式 阅读全文
posted @ 2021-08-16 17:27 精进的浩然兄 阅读(51) 评论(0) 推荐(0) 编辑
摘要:了解MySQL日志文件,看这一篇就够了。 https://www.cnblogs.com/f-ck-need-u/p/9001061.html 阅读全文
posted @ 2021-08-13 17:31 精进的浩然兄 阅读(28) 评论(0) 推荐(0) 编辑
摘要:定时任务的实现方法主要有 Timer、Quartz 以及 @Scheduled,实现SchedulingConfigurer 接口。 实际使用中我们往往想从数据库中读取指定时间来动态执行定时任务,这时候基于接口的定时任务就派上用场了。 Timer 实现定时任务 只执行一次的定时任务 Timer ti 阅读全文
posted @ 2021-08-13 14:47 精进的浩然兄 阅读(275) 评论(0) 推荐(0) 编辑
摘要:redis能干啥? MySQL说,其实有一大半的用户请求都是读操作,而且经常都是重复查询一个东西,浪费它很多时间去进行磁盘I/O。 后来有人就琢磨,是不是可以学学CPU,给数据库也加一个缓存呢?于是redis就诞生了! 缓存的数据都是在内存中,可是就算是在服务器上,内存的空间资源还是很有限的。 如何 阅读全文
posted @ 2021-08-11 14:18 精进的浩然兄 阅读(29) 评论(0) 推荐(0) 编辑
摘要:ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。可能很多朋友都知道ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 这句话从字面上看起来很容易理解,但是真正理解并不是那么容易。 https://www.c 阅读全文
posted @ 2021-08-11 11:11 精进的浩然兄 阅读(26) 评论(0) 推荐(0) 编辑
摘要:xxl-job是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 想要详细了解学习,看这二篇就够了。 https://www.cnblogs.com/just-coder/p/10981618.html https: 阅读全文
posted @ 2021-08-11 11:03 精进的浩然兄 阅读(89) 评论(0) 推荐(0) 编辑
摘要:一、了解MDCMDC是什么 MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 和 logback 提供的一种方便在多线程条件下记录日志的功能,也可以说是一种轻量级的日志跟踪工具。MDC能做什么 那么通过MDC的概念,我们可以知道,MDC是应用内的线程级别,不 阅读全文
posted @ 2021-08-10 17:35 精进的浩然兄 阅读(5681) 评论(1) 推荐(0) 编辑
摘要:用多线程只有一个目的,那就是更好的利用cpu的资源。 线程与进程: 进程:正在进行中的程序,一个进程包含多个线程。 并行与并发: 并行:多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。 有数据共享才会 阅读全文
posted @ 2021-08-09 11:26 精进的浩然兄 阅读(30) 评论(0) 推荐(0) 编辑
摘要:死锁的产生与避免 数据库和操作系统一样,是一个多用户使用的共享资源。当多个用户并发地存取数据 时,在数据库中就会产生多个事务同时存取同一数据的情况。 所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。举例:我拿一根筷子,你拿一根 阅读全文
posted @ 2021-08-09 10:39 精进的浩然兄 阅读(1738) 评论(0) 推荐(0) 编辑
摘要:mysql锁机制分为表级锁和行级锁,本文就和大家分享一下我对mysql中行级锁中的共享锁与排他锁进行分享交流。 共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。 排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存, 阅读全文
posted @ 2021-08-06 17:34 精进的浩然兄 阅读(184) 评论(0) 推荐(0) 编辑
摘要:悲观锁与乐观锁是人们定义出来的概念,你可以理解为一种思想,是处理并发资源的常用手段。 不要把他们与mysql中提供的锁机制(表锁,行锁,排他锁,共享锁)混为一谈。 一、悲观锁 顾名思义,就是对于数据的处理持悲观态度,总认为会发生并发冲突,获取和修改数据时,别人会修改数据。所以在整个数据处理过程中,需 阅读全文
posted @ 2021-08-06 17:31 精进的浩然兄 阅读(586) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示