自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

原创 8.并发集合

并发集合并发集合并发集合分类并发集合并发集合分类本文如有任何问题,请留言指教,以免误导他人

2021-05-23 20:53:09 161

翻译 7.Fork/Join框架应用

Fork/Join框架应用Fork/Join框架应用Fork/Join的概念什么是Fork/JoinFork/Join的限制工作窃取算法(Work-Stealing-Algorithm)Fork/Join核心组成ForkJoin入门案列Fork/Join框架应用Fork/Join的概念什么是Fork/JoinFork/Join的限制工作窃取算法(Work-Stealing-Algorithm)Fork/Join核心组成ForkJoin入门案列本文如有任何问题,请留言指教,以免误导他人..

2021-05-23 16:24:16 157

原创 6.执行器框架的应用ThreadPoolExecutor、Executors

执行器框架的应用执行器框架的应用ThreadPoolExecutorExecutors 创建线程池线程池的状态执行器框架的应用ThreadPoolExecutorExecutors 创建线程池线程池的状态本文如有任何问题,请留言指教,以免误导他人...

2021-05-05 16:44:24 179

原创 6.线程同步辅助类

线程同步辅助类线程同步辅助类SemaphoreCountDownLatchCyclicBarrierPhaserExchanger线程同步辅助类SemaphoreSemaphore(信号量)是一种计数器,用来保护一个或者多个共享资源的访问Semaphore接收一个int类型的整数,表示可以获取共享资源访问的次数如:Semaphore semaphore = new Semaphore(3);当调用semaphore.acquire()方法,信号量减去1,当信号量为0的时候,访问的线程进入等待状态

2021-04-17 23:19:58 147

原创 5.什么是公平锁和非公平锁?

什么是公平锁和非公平锁公平锁和非公平锁以及条件锁的应用什么是公平锁和非公平锁?公平锁和非公平锁以及条件锁的应用什么是公平锁和非公平锁?公平锁:多个线程按照申请锁的顺序去获得锁,线程会直接进入队列去排队,永远都是队列的第一位才能得到锁。优点:所有的线程都能得到资源,不会饿死在队列中。缺点:吞吐量会下降很多,队列里面除了第一个线程,其他的线程都会阻塞,cpu唤醒阻塞线程的开销会很大。非公平锁:多个线程去获取锁的时候,会直接去尝试获取,获取不到,再去进入等待队列,如果能获取到,就直接获取到锁。优点:

2021-03-14 23:17:38 176

原创 4.Java线程基础--synchronized和lock的区别

ThreadLocal线程局部变量synchronized和lock的区别synchronized和lock的区别synchronized是Java关键字,用于线程同步,lock是juc包提供的处理并发的锁synchronized不需要手动加锁和解锁,lock需要手动加锁和解锁,注意解锁必须写在finally中synchronized可以用在代码块,方法上,lock只能用在方法上synchronized性能比lock差,jdk1.6之后性能得到提升,采用锁升级的方式synchronized锁粒

2021-03-10 21:40:54 102

原创 3.Java线程基础--ThreadLocal线程局部变量

ThreadLocal线程局部变量ThreadLocal线程局部变量ThreadLocal基本方法set方法get方法remove方法内存泄漏ThreadLocal线程局部变量ThreadLocal共享数据是并发数据最核心的问题之一,对于继承了Thread或者实现Runnable接口的对象来说尤其重要如果对象是实现了Runnable接口,那传入的参数将被多个线程共享,任意线程修改都还会影响到其他线程,会产生一些安全隐患在某些情况某些属性不需要线程之间共享,java并发Api则为我们提供了线程局部变

2021-03-09 22:05:35 173

原创 2.Java线程基础--sleep、wait、yield、join等区别

sleep、wait、yield、join等区别sleep、wait、yield、join线程的休眠与恢复sleepwaityieldjoinsleep、wait、yield、join线程的休眠与恢复sleep线程进入堵塞状态,释放CPU资源,不释放锁资源,当sleep时间当会重新进入就绪状态,等待CPU调度wait线程进入等待状态,释放CPU资源和锁资源,需要等待notify和notifyAll方法进行唤醒,唤醒后进入就绪状态,等待CPU调度yield线程直接进入就绪状态,释放CPU

2021-03-07 18:17:09 115

原创 1.Java线程基础--线程中断标记interrupt(),isInterrupted(),interrupted()

DefaultListableBeanFactorySpring基本流程DefaultListableBeanFactoryDefaultListableBeanFactory类图Spring基本流程使用Resource对象加载spring的xml配置文件创建DefaultListableBeanFactory对象,是spring加载bean的核心组件XmlBeanDefinitionReader对象,底层使用SAX解析xml文件使用loadBeanDefinitions方法,把xml配置的

2021-03-07 14:32:30 792

原创 Spring源码解析-DefaultListableBeanFactory

浅谈XML解析流程Spring基本流程ResourceDefaultListableBeanFactoryXmlBeanDefinitionReader详细流程解读借鉴的设计Spring基本流程 //1.加载资源文件 Resource resource = new ClassPathResource("spring-bean.xml"); BeanFactory bf = new DefaultListableBeanFactory(); //2.定义XmlBeanDefinition

2021-03-01 23:43:38 162

原创 Navicat可以连接,但是java程序连接connection timeout

直接说原因, navicat用的ssh连接,但是常规连接也配置了,一直以为用的常规连接java程序用的普通jdbc连接,所以一直超时,改成ssh的方式即可

2021-02-20 18:28:09 1822

转载 10分钟看懂, Java NIO 底层原理

1.1. JavaIO读写原理无论是Socket的读写还是文件的读写,在Java层面的应用开发或者是linux系统底层开发,都属于输入input和输出output的处理,简称为IO读写。在原理上和处理流程上,都是一致的。区别在于参数的不同。用户程序进行IO的读写,基本上会用到read&write两大系统调用。可能不同操作系统,名称不完全一样,但是功能是一样的。先强调一个基础知识:read系统调用,并不是把数据直接从物理设备,读数据到内存。write系统调用,也不是直接把数据,写入到物理.

2021-02-19 15:34:45 110

原创 JavaBug系列-莫名的jaccooData字段

JavaBug系列之SpringBoot返回Xml结构的问题Java医生一、关于错误信息二、如何解决问题Java医生本系列记录常见Bug,以及诊断过程和原因作者:Jimmy教学:Java一对一辅导,一直负责找到工作!企业项目辅导,专注于辅导新入职员工,解决各种问题!V:study_51ctofx一、关于错误信息如图,SpringBoot请求返回Xml格式信息通过以上信息分析,SpringBoot默认是使用json格式,如果使用了xml说明pom中引入了xml格式化的jar包思路: 使

2021-01-11 23:58:10 380

原创 5.MyBatis源码解析-MyBatis面试题--阿呆中二

MyBatis面试题MyBatisMyBatis面试题一、MyBatis一级缓存和二级缓存?MyBatis 有几种执行器和区别?Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?Mybatis是如何进行分页的?分页插件的原理是什么?Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?与我联系MyBatis本文是对mybatis 3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面

2021-01-10 15:00:23 398

原创 4.MyBatis源码解析-MyBatis扩展点--阿呆中二

MyBatis扩展点MyBatisMyBatis扩展点与我联系MyBatis本文是对mybatis 3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面试题进行源码分析。mybatis 3.x源码深度解析与最佳实践下载:https://download.csdn.net/download/u013425841/12816685MyBatis扩展点MyBatis提供4个扩展点:Executor执行器接口

2021-01-06 02:29:47 938

原创 3.MyBatis源码解析-CRUD执行流程--阿呆中二

CRUD执行流程MyBatisCRUD执行流程与我联系MyBatis本文是对mybatis 3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面试题进行源码分析。mybatis 3.x源码深度解析与最佳实践下载:https://download.csdn.net/download/u013425841/12816685CRUD执行流程MyBatis执行的基本流程大致可以分四个步骤:使用Resources

2021-01-05 00:30:01 169

原创 2.MyBatis源码解析-SqlSession构建流程--阿呆中二

XML解析流程MyBatisSqlSession构建流程与我联系MyBatis本文是对mybatis 3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面试题进行源码分析。mybatis 3.x源码深度解析与最佳实践下载:https://download.csdn.net/download/u013425841/12816685SqlSession构建流程MyBatis执行的基本流程大致可以分四个步骤:

2021-01-03 20:05:48 162

原创 1.MyBatis源码解析-XML解析流程--阿呆中二

XML解析流程MyBatisXML解析流程MyBatis本文是对mybatis 3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面试题,进行源码分析。mybatis 3.x源码深度解析与最佳实践下载:https://download.csdn.net/download/u013425841/12816685Java/一对一零基础辅导/公司项目一对一辅导/日常Bug解决/代码讲解/毕业设计等 微信:study

2021-01-01 19:26:45 574

原创 MySQL创建高性能的索引(三)

MySQL创建高性能的索引MySQL索引基础B-Tree索引适用的查询类型B-Tree注意事项索引分类和区别B-Tree索引Hash索引空间索引全文索引索引注意事项聚簇索引索引覆盖MySQL索引是存储引擎快速找到记录的一种数据结构。使用索引可以极大的提高MYSQL的查询性能,接下来讲介绍索引的基础、索引的分类和区别、索引的注意事项、以及关于聚簇索引和覆盖索引的知识点。索引基础当你去看一本书,如何快速找到你想打开的页? 你一定会先看书的索引部分,在根据索引的页码数直接定位到目标页。相比你一页页的去翻看

2020-08-23 19:33:23 103

原创 Java之常量的概念

Java之常量的概念零基础学Java什么是常量常量的分类常量池常量优化机制动动手练习题零基础学Java有尝提供Java一对一辅导、公司项目辅导,终身导师V:study_51ctofx什么是常量常量:程序运行中,固定不变的量两种表现形式:字面常量和final修饰的常量public static void main(String[] args){ //其中 1 为字面常量,固定不变的量 int a = 1; //或者这里的 1 也是字面常量 System.out.prin

2020-08-09 22:48:27 272

原创 MySQL数据类型和Schema优化(二)

MySQL数据类型和Schema优化MySQL合适的数据类型Schema设计Schema设计坏味道范式与反范式缓存表和汇总表MySQL良好的逻辑设计与物理设计是高性能的基石,应该根据具体业务需求的查询语句来设计schema,这往往需要权衡各种因素。比如,反范式的设计可能会增加某些查询的速度,但也会带来数据同步的维护工作。合适的数据类型MYSQL支持的数据类型非常多,选择合适的数据类型将有助于MySQL的性能提升。一般遵循以下规则:更小的数据类型简单的数据类型避免使用Null更小的数据

2020-07-10 16:42:46 137

原创 MySQL逻辑架构和执行流程(一)

MySQL逻辑架构和执行流程MySQL逻辑架构图第一层(连接层)第二层(核心服务层)第三层(存储引擎)各组件详细介绍ConnectorsConnection PoolSQL_InterfaceParser解析器Optimizer优化器Cache和Buffer缓存Engine执行流程MySQL逻辑架构图第一层(连接层)连接层不是MYSQL架构特有的,基本上基于网络的客户端/服务端都存在类似架构,用于处理连接、授权、安全处理等第二层(核心服务层)MYSQL大多数核心服务功能都在这一层,包括权限认证

2020-06-30 22:39:33 483

原创 JavaBug系列-解决SpringBoot返回Xml结构的问题

JavaBug系列之Mysql驱动问题Java医生一、关于错误信息二、如何解决问题Java医生本系列记录常见Bug,以及诊断过程和原因作者:Jimmy教学:Java一对一辅导,一直负责找到工作!企业项目辅导,专注于辅导新入职员工,解决各种问题!V:study_51ctofx一、关于错误信息如图,SpringBoot请求返回Xml格式信息通过以上信息分析,SpringBoot默认是使用json格式,如果使用了xml说明pom中引入了xml格式化的jar包思路: 使用idea查看pom的

2020-06-29 06:22:34 1173

原创 JavaBug系列- Failed to load driver class com.mysql.cj.jdbc.Driver in either of HikariConfig class load

JavaBug系列之Mysql驱动问题Java医生一、关于错误信息二、如何解决问题Java医生本系列记录常见Bug,以及诊断过程和原因作者:Jimmy教学:Java一对一辅导,一直负责找到工作!企业项目辅导,专注于辅导新入职员工,解决各种问题!V:study_51ctofx一、关于错误信息APPLICATION FAILED TO STARTDescription:Failed to bind properties under ‘’ to com.zaxxer.hikari.Hika

2020-06-28 17:36:32 6842 4

原创 二、Java之关键字与命名规范

二、零基础自学Java之关键字与命名规范零基础学Java什么是关键字命名规范的重要性零基础学Java本系列文章力求极简,用最简单的白话文解释复杂难以理解的概念.作者:Jimmy教学:Java一对一辅导,负责到找到工作! V:study_51ctofx什么是关键字关键字:含有特殊意义,编译器解析成特定的含义;比如 private、int、void、class、enum 等等,这些关键字都不能用作变量、方法名、类名等.//错误,static 是关键字 不能用作变量名private int s

2020-06-28 14:12:24 187

原创 一、Java之环境搭建

一、零基础学Java之环境搭建零基础学Java什么是Java为什么学习JavaJava运行环境零基础学Java本系列文章力求极简,用最简单的白话文解释复杂难以理解的概念.作者:Jimmy教学:Java一对一辅导,负责到找到工作! V:study_51ctofx什么是JavaJava是一门计算机高级编程语言.计算机语言分三个层次:机器语言、汇编语言、高级语言机器语言:0和1组成的序列,难以理解;汇编语言:引入特定助记符,方便理解,仍需要有一定专业基础;高级语言:倾向人类更容易理解的自然语

2020-06-28 11:17:31 112

mybatis 3.x源码深度解析与最佳实践1.html.zip

还不错的MyBatis源码分析资料,对学习MyBatis有不错的帮助,可以参考学习,不懂的可以交流哈 V:study_51ctofx

2020-09-05

java基础语法练习题.zip

Java基础语法练习题,自己整理的,提供给入门的java同学,巩固学习成果。 做题过程有任何问题,都可以咨询我

2020-06-28

空空如也

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

TA关注的人

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