自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 js快速回顾

【代码】js快速回顾。

2023-10-25 11:01:04 161

原创 Spring事务

接口:PlatfromTransactionManger,里面有子接口,有针对不同的框架有不同的实现类【mybatis里是DatasourceTransactionManager】提供一个接口,代表事务管理器,这个接口针对不同的框架提供不同的实现类。在Spring声明式事务中底层使用的是:AOP原理。事务特性:ACID【原子、一致、隔离、持久】逻辑上的一组操作,要么都成功、要么都失败。service:逻辑操作,调用dao。分为两种方式:声明式、编程式。dao:创建两个方法。编程式:通过代码实现。

2023-10-04 15:54:56 201

原创 resultmap

resultMap处理字段和属性的映射关系若字段名和实体类中的属性名称不一致,则可以通过resultMap设置自定义映射建moudel项目【实现多对一、一对多的表操作demo】temp员工表、dept部门表导入依赖【mysql驱动、junit、mybatis、日志依赖log4j】rescources资源文件中导入:jdbc\log4j.xml文件在rescources中创建核心配置文件和映射文件创建是实体类、mapper接口、映射文件emp表:eid emp_name age sex e

2023-10-02 14:26:01 200

原创 mybatis总结

param(“username”) String username:加入该注解后表示意思是:mybatis就会将括号的值为键,参数为值。映射文件中的sql语句的id要黑盒mapper接口中的方法名一致。获取sqlsession对象:代表java程序和数据库的会话。获取参数-情况一:mapper接口为单个字面量类型。实体类对象和@Param两种方式作为主要使用。查询实体类对象【以User对象为例】多个字面量类型或者说参数有多个【命名参数:使用@param注解。${}: 字符串拼接。

2023-09-29 15:23:42 138

原创 6.19-MyBatis源码—体系介绍和配置文件解析源码剖析

xml文件【mybatis的主配置文件】—SqlSessionFactoryBuilder().Builder()【构建的时候就是解析整个过程】—通过xml节点去解析所有信息:settings、数据库环境(数据库连接、事务)类型处理器、别名解析器、mapper.xml【就会解析CRUD,由XmlMapperBuilder负责解析的,其他由XmlConfigBuilder负责解析的】、插件。加载驱动—创建连接—开启事务—获得sql的执行者—执行sql。主要内容:执行sql的准备。JDBC四大核心对象。

2023-09-18 11:08:53 75 1

原创 6.8-SpringIoC之循环依赖底层源码解析

创建Map,存不完整的Bean。

2023-09-18 08:05:56 60

原创 4.4-Spring源码循环依赖终极讲解

new AnnotateBeanDefinitionReader 的时候创建很多创世纪的类,其中有一个ConfigurationPostProcessor是用来解析配置类的,将其注册起来存到Bean定义的Map中【这个类是基于Bean工厂后置处理器的】拿到所有实现了**BeanDefinitionRegisttryPostProcessor()**的类, 这个时候就会拿到解析配置类的类。这一步是将配置类注册到Bean定义的Map当中,这时候Map中配置类和解析配置类的类有了。拿到配置类,拿到就放到。

2023-09-14 22:04:00 148

原创 4.3-内置后置PostProcess处理器深度讲解

进行IOC容器刷新中的invokeBeanPostProcessors(beanFactory)去调用实现BeanFactoryPostProcesor()reader会调取register()来注册配置类。在reader里面注册了很多Bean定义。配置类有了、解析配置类的处理器有了。实现这两个接口的Bean定义。

2023-09-12 21:02:02 107

原创 4.2 Ioc容器加载过程-Bean的生命周期深度剖析

实例化了一个Bean工厂注册了很多创世纪的处理器Bean定义,用来支撑后面的运行实例化了Scanner,扫描包,接收包的全路径,通过包的路径就能找到所有类。

2023-09-11 22:04:38 128

原创 ES快速学习

的工具。

2023-09-09 18:48:20 101

原创 SpringSecurity一日干

4,3步骤也验证不了需要调用3的authenticate方法进行验证。5,4步骤也不行,需要4中的loadUserByName方法查询用户。3,传给下一个,调用2中的authenticate方法进行验证。2,将提交的信息封装Authentication对象。添加redis使用fastJson序列化相关配置。Redis的工具类再封装。1,提交用户名和密码。定义redis配置类。

2023-09-09 18:47:31 74

原创 三色标记整理

表示这个对象已经被垃圾收集器访问过,且所有的引用都扫描过。黑色的对象代表已经扫描过,他是安全存活的,如果有其他引用指向他的话,无需重新扫描一遍,黑色对象不可能(不经过灰色)直接指向白色。在并发标记过程中,因为标记期间应用线程还在继续跑,多标漏标的情况有可能发生。把Gcroot可达性分析遍历分析对象过程中遇到的对象,按照知否访问过来标记。:表示这个对象已经被垃圾收集器访问过,至少存在一个引用没有被扫描过。:没有被垃圾收集器访问过,未可达。

2023-09-07 22:06:01 78

原创 五-垃圾收集器G1&ZGC详解

年轻代的回收预估时间小于设置的停顿时间会触发young GC。ZGC是一款jdk11中加入的具有实验性质的低延迟垃圾收集器。物理上没有明显的物理概念,但是逻辑上还是有分代概念。物理上分一个一个小格子,分四种格子。

2023-09-03 13:38:26 149

原创 超市商品管理

实现逻辑。

2023-09-01 20:27:34 143

原创 MQ幂等性问题

解决方法:MQ幂等性解决一般采用全局ID。利用redis的原子性实现执行setnx。幂等性:一个消息被重复消费多次。

2023-08-28 14:12:08 48

原创 TCP详解

tcp

2023-08-28 10:49:00 44

原创 4-1-netty

netty

2023-08-27 14:01:48 183

原创 MQ-整体回顾

mq

2023-08-27 12:06:24 109

原创 并发-线程池

CPU密集型任务:比如找出1-1000000的素数:理论是CPU核数+1。线程数 = CPU核心数*(1+线程等待时间/线程运行总时间)tidying:所有的线程停掉之后就会变成这个状态。1:如何设置线程池的核心线程数和最大线程数4。shutdown:会把队列中的任务处理完。IO密集型任务:比如文件io 网络io。工具:Jmeate、PostApi。限定在一端进行插入,一端进行删除。现实工作中经常用压测的方法来估算。stop:不会处理队列中的任务。多了两个方法:会进行阻塞。出队为队头,入队为队尾。

2023-08-25 15:07:07 53

原创 JVM整体回忆笔记

执行过程的不确定性,会存在上一次垃圾没收集完,然后垃圾收集又被触发的情况,会导致全部STW,垃圾收集器会用Serial Old。重新标记:修正并发标记过程因用户线程继续执行而产生的标记变动,这个阶段的停顿时间比较长,主要用到三色标记里的增量更新算法。单线程,使用时只会使用一条垃圾收集器线程去完成收集工作,而且还会进行STW,知道收集结束。标记清除算法,产生内存碎片,可以通过参数设置调节,可以让清除完后进行整理。对象存需要连续空间,栈可能没有,只有打散的空间,因此需要。使用标记清除算法,产生大量空间碎片。

2023-08-16 14:01:50 64

原创 并发工作回忆

方法二:一个线程利用可重入锁Lock对锁进行连续获取,都获取到再进行业务代码处理,否则就全部释放锁。,我们只需要加个睡眠个随机时间,来错开获锁。方法一:锁进行顺序获取几乎解决。解决死锁问题后可能会出现。

2023-08-14 22:34:18 33

原创 网络编程_基础

可靠的网络协议,通信两端建立Socket对象,通信之前确保连接建立,通过io流进行网络通信。应用层【http】、传输层【tcp】、网络层【ip】、物理+数据链路层【硬件设备】世界互联协议标准,全球通信规范,模型过于理想化,未能推行。速度快、有大小限制最多发64k,数据不安全、易丢失数据。应用、表示、会话、传输、网络、数据链路、物理。速度慢、没有大小限制、数据安全。面向无连接的通信协议。

2023-08-14 22:26:46 25

原创 xxljob

调度中心:下载调度中心的代码下载sql,执行sql更改配置启动项目输入地址即可访问界面执行器:新建springboot的项目,导入相关依赖添加和执行器的配置上面的就是读取配置文件的信息把从配置文件获取的值set到对应的属性上,然后交给spring管理任务类启动程序执行器就会在调度器界面展示增加任务管理点击新增启动任务BEAN模式:是在执行器上写@xxljob注解,声明任务处理方法是哪一个,最后在调度中心指定名称,然后做执行另外一种就是。

2023-07-27 16:47:47 82

原创 Java面试【SpringBoot常用注解、linux命令】

java面试

2023-07-24 22:36:06 344

原创 String的intern()理解

intern()理解

2023-07-19 11:18:23 277

原创 Oracle简学

Oracle

2023-07-18 18:59:50 35

原创 MySQL和Oracle的区别【不断完善……】

mysql与Oracle的区别

2023-07-17 16:03:34 47

原创 SpringCloudAlibaba

SpringCloudAlibaba

2023-07-11 22:09:45 197

原创 4.1-Spring源码整体脉络介绍及源码编译

Spring原码

2023-07-05 16:43:21 268

原创 并发-抽象队列同步器AQS应用Lock详解

AQS

2023-07-02 00:04:26 178

原创 并发-synchronized详解

synchorized详解

2023-06-30 13:03:22 370

原创 4.3-并发-JMM-CPU缓存一致性协议MESI

MESI缓存一致性协议

2023-06-29 19:08:24 182 1

原创 并发-编程之JMM&volatile详解

并发-指令重排

2023-06-29 09:35:21 101

原创 并发-操作系统底层工作的整体认识

并发-认识

2023-06-27 19:06:39 101

原创 并发-并发容器

并发容器

2023-06-26 23:28:20 25

原创 并发-理解并发

并发

2023-06-26 17:33:41 25

原创 并发锁机制之synchorized

sy

2023-06-19 20:13:50 73

原创 Redis-缓存

新增或者更新数据时,创建以后顺便存到redis中去【维护缓存】获取的时候先从redis缓存中拿数据如果拿数据的时候为空,则到数据库中拿数据,后再存到redis缓存中去大量的商品【包括冷门商品】都进行上面的缓存,那么就很耗内存针对每个数据进行缓存的时候 维护一个过期时间查询的时候,我们对缓存时间做延期处理【超时延期】【读延期】,这样每天访问的数据就会一直在缓存中—【数据的冷热分离】

2023-06-18 21:02:37 1562

原创 mysql-调用执行引擎【innodb版】

sql执行过程

2023-06-16 12:57:30 71

原创 mysql-整体内部结构

mysql整体内部结构

2023-06-16 10:51:51 37

面试题及面试题记录.zip

面试题及面试题记录.zip

2022-12-29

java的学习指南,来自gitbub作者Aobing

java

2022-10-14

空空如也

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

TA关注的人

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