- 博客(22)
- 收藏
- 关注
原创 ES的使用总结
Elasticsearch默认使用的分词器是Standard Analyzer(标准分析器),标准分词器对英文分词比较友好,按空格划分英文单词,但是对于中文也是逐个字划分,因此并不适用于中文分词。"text": "hi how are you 查看展示"分词结果},},},},"token" : "查",},"token" : "看",},"token" : "展",},"token" : "示",
2023-08-11 20:19:26
222
原创 mybatis执行原理分析
对象关系映射是指java的对象与数据库表中字段的映射,因为数据类型、列的名称与对象名称有对应的命名约定,所以数据库中查询的数据到java对象以及查询参数到列字段转换的过程,mybatis是一个半自动的对象关系映射框架,因为sql语句还是需要手动编写。
2023-07-08 16:29:34
132
1
原创 Spring MVC执行流程分析
说了这么多Spring MVC是做什么的呢?一个web框架。那具体些就是接受前端的请求,根据请求的路径找到服务器中对应的方法处理,然后再将返回的结果返回。接下来我们来详细了解整个过程:1.一个请求发送到服务端,会到达前端控制器DispatcherServlet,DispatcherServlet为请求处理流程提供统一的调度。2.收到请求后前端控制器首先会调用HandlerMapping,根据请求的url和配置的映射@RequestMapping匹配,生成处理器链,返回处理器Handler。
2023-07-06 19:39:02
110
1
原创 spring boot自动装配原理介绍
简介:springboot是spring快速启动的脚手架,通过自动装配减少spring、及spring与其他功能整合中涉及到的大量配置,为程序人员的开发提供了较大的便利,能够通过较为简单导包的方式和少量配置,引入其他功能,本文主要介绍springboot自动配置的原理。注解@Import的作用,判断value值的类型,如果实现了ImportSelector接口,就会将类中selectImports()返回的集合中所有的权限名注入到容器中,所以我们来看这个类中selectImports()方法的实现。
2023-07-06 16:41:06
132
1
原创 Docker的使用与介绍
1.查看本地所有的镜像 docker images REPOSITORY TAG IMAGE ID CREATED SIZEhello-world latest 9c7a54a9a43c 2 weeks ago 13 .3kB docker images -a #查看所有镜像 docker images -q #只查看镜像的id #2.搜索镜像 docker search 镜像名称 NAME DESCRIPTION STARS OFFICIAL AUTOMATED。
2023-05-28 08:45:00
133
原创 mysql中sql语句的优化
简述:一条sql语句是如何执行的,我们常用的分组、排序、连接等sql语句是如何优化的,本文主要分析总结sql优化的原则方法。sql的优化,不仅仅指的是sql语句的优化,我们想要对sql的优化有全局的了解,需要对sql的执行过程有个全面的了解。
2023-05-12 09:45:00
79
原创 spring 启动过程分析
本文主要介绍spring启动的过程以及为后续功能的实现做了哪些准备工作。在容器启动之前创建了bean工厂、bean定义的读取器和扫描器,下面主要来看下启动的方法 refresh做了哪些事情。4.容器启动前的准备工作,例如 设置参数到Environment中,校验一些属性值是否设置。5.Bean工厂的设置,例如 设置的类的加载器、El表达式的解析器、添加后置处理器等。2.调用自身的无参构造器,初始化bean定义的读取器和扫描器。10.设置定义的监听器到容器中并发布之前的事件。容器启动前的准备的工作。
2023-04-17 22:12:13
72
原创 并发解决方案AQS及并发工具类的详细介绍
我们先来看一下如何基于AQS自定义一把锁的实现:1.继承类AbstractQueuedSynchronizer2.实现获取锁、释放锁的逻辑} } }
2023-04-17 15:56:51
134
原创 并发解决方案synchronized同步锁
管程是管理共享变量以及对共享变量的操作过程,让它们支持并发。目前比较广泛使用的管程模型是MESI模型,另外的Hasen模型、Hoare模型可以适当了解,这里主要介绍MESI模型。MSEI模型通过入口等待队列、多个条件等待队列来解决线程间的同步问题。具体分析:当多个线程共同访问共享变量时,只能有一个线程获取到锁,那没有获取到锁的线程会进入到同步等待队列中,当获取锁的线程执行完业务逻辑,释放锁后会唤醒同步等待队列中的线程来获取锁,从而执行业务逻辑。
2023-04-16 23:48:47
333
2
原创 spring中应用上下文的事件
自定义事件 public class MyEvent extends ApplicationEvent {} } 事件监听器 public class MyEventListener implements ApplicationListener < MyEvent > {System . out . println("发布了事件,监听器" + myEvent . getEventName() + "做出响应");
2023-04-16 11:21:54
146
1
原创 Java虚拟机——垃圾回收相关算法
1.将对象的释放和内存的回收的好处?在Java编程中将这些工作交给虚拟机,简化了代码的同时也减轻了程序员的工作任务,自动化的垃圾回收以及内存管理带来很大的便利。但是当出现内存泄漏和内存溢出等情况时,很少程序员会对虚拟机的垃圾回收机制熟悉,并不是那么容易排查问题。因此了解虚拟机的原理还时有必要的。2.垃圾回收器的算法在Java堆中和方法区里面的对象时在运行时创建的,内存的回收也是动态的。因此在...
2019-12-10 16:30:03
139
1
原创 深入理解Java虚拟机——内存分类
深入理解Java虚拟机——内存分类Java将内存管理交给虚拟机管理,程序员不用为每个new的操作写delete/free配对的代码,但是当出现内存泄漏和内存溢出时,如果不了解Java虚拟机内存存储的机制不容易查找问题。虽然本人遇到的次数并不多,采用的解决办法也只是局限于清理电脑的垃圾,而未深入理解其具体原因,为了能够提升解决问题的能力,需要学习一些经典的书籍,本文将总结学习《深入理解Java虚拟...
2019-12-03 13:48:34
176
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人