随笔分类 -  后端

后端学习
摘要:-摘自《深入理解Java虚拟机》 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域 有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是 依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范》的规定,Java 阅读全文
posted @ 2022-05-08 18:04 青橙e 阅读(47) 评论(0) 推荐(0)
摘要:I/O 模型基本说明 I/O 模型:就是用什么样的通道或者说是通信模式和架构进行数据的传输和接收,很大程度上决定了程序通信的性能,Java 共支持 3 种网络编程的/IO 模型:BIO、NIO、AIO 实际通信需求下,要根据不同的业务场景和性能需求决定选择不同的I/O模型 Java BIO 同步并阻 阅读全文
posted @ 2022-05-03 20:54 青橙e 阅读(113) 评论(0) 推荐(0)
摘要:遍历目录 @Test void pathTest() throws IOException { AtomicInteger directoryCount = new AtomicInteger(); AtomicInteger fileCount = new AtomicInteger(); Fil 阅读全文
posted @ 2022-05-03 16:29 青橙e 阅读(198) 评论(0) 推荐(0)
摘要:实现思路: 准备一个ThreadLocal变量,供线程之间共享。 每个微服对请求过滤,不管是经过网关的请求还是Feign的请求,如果是从网关过来的请求,从请求头中获取token并解析得到用户信息,然后存入ThreadLocal变量;如果是feign请求,直接获取请求头中的用户信息存入ThreadLo 阅读全文
posted @ 2021-10-29 15:51 青橙e 阅读(1512) 评论(0) 推荐(0)
摘要:Spring Cloud Gateway 的自定义Filter分为GatewayFilter局部过滤器和GlobalFilter全局过滤器 GatewayFilter : 需要通过spring.cloud.routes.filters 配置在具体路由下,只作用在当前路由上或通过spring.clou 阅读全文
posted @ 2021-10-27 23:13 青橙e 阅读(1995) 评论(0) 推荐(0)
摘要:ElasticSearch的Java客户端 官方文档:https://www.elastic.co/guide/en/elasticsearch/client/index.html Java REST 客户端有两种风格: Java 低级 REST 客户端:Elasticsearch 的官方低级客户端 阅读全文
posted @ 2021-10-25 19:12 青橙e 阅读(793) 评论(0) 推荐(0)
摘要:xxl-job分布式定时任务分为两个部分:调度中心和执行器; 调度中心通过Web页面对任务进行CRUD操作,统一管理任务调度平台上调度任务,负责触发调度执行。 执行器是要处理的任务 下面看一下怎么使用xxl-job分布式定时任务 初始化数据库 请下载项目源码并解压,获取 “调度数据库初始化SQL脚本 阅读全文
posted @ 2021-10-22 19:29 青橙e 阅读(972) 评论(0) 推荐(0)
摘要:MySQL做了读写分离,一主两从。主服务器写数据,从服务器只可以读数据,不可以写数据 所以现在有三个数据源,写一个,读两个 使用MyBatis-Plus的多数据源来做数据源的切换 加入依赖 <dependency> <groupId>com.baomidou</groupId> <artifactI 阅读全文
posted @ 2021-10-21 05:48 青橙e 阅读(596) 评论(0) 推荐(0)
摘要:安装JMeter 下载JMeter对应的压缩包:https://jmeter.apache.org/download_jmeter.cgi 解开压缩包,进入bin目录中双击jmeter.bat 就可以运行 JMeter 启动完成之后,会出现如下界面 JMeter支持语言设置,默认是英文,可以修改为中 阅读全文
posted @ 2021-10-12 16:30 青橙e 阅读(109) 评论(0) 推荐(0)
摘要:使用RabbitMQ的作为延时队列,模拟订单超时,解锁库存。 RabbitMQ没有延迟队列,可以用死信队列+普通队列来完成延迟队列的功能。 消息发给交order.event.exchange交换机,交换机使用order.create.order路由键将消息发给order.delay.queue死信队 阅读全文
posted @ 2021-10-05 18:31 青橙e 阅读(186) 评论(0) 推荐(0)
摘要:如果某个依赖在maven中央仓库中没有,或者总是通过maven下载不下来,可以考虑手动安装依赖到Maven本地仓库中 比如说要手动安装lucene-analyzers-common-8.9.0.jar, 它的坐标如下 <dependency> <groupId>org.apache.lucene</ 阅读全文
posted @ 2021-09-28 18:21 青橙e 阅读(392) 评论(0) 推荐(0)
摘要:文档和索引 Elasticsearch 是一个分布式文档存储。Elasticsearch 不是将信息存储为列状数据的行,而是存储已序列化为 JSON 文档的复杂数据结构。当集群中有多个 Elasticsearch 节点时,存储的文档分布在整个集群中,并且可以从任何节点立即访问。 存储文档后,它会被编 阅读全文
posted @ 2021-09-28 15:12 青橙e 阅读(282) 评论(0) 推荐(0)
摘要:线程池的构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, Thread 阅读全文
posted @ 2021-09-27 14:23 青橙e 阅读(621) 评论(0) 推荐(0)
摘要:EasyExcel 简介 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存 阅读全文
posted @ 2021-09-26 16:07 青橙e 阅读(410) 评论(0) 推荐(0)
摘要:MyBatis-Plus简介 MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本 阅读全文
posted @ 2021-09-25 19:33 青橙e 阅读(225) 评论(0) 推荐(0)
摘要:#{ } 和 ${ } 取值的区别 #{} : 是以预编译的形式,将参数设置到sql语句中,防止sql注入; ${} : 取出的值会直接拼接在sql语句中,会有安全问题; resultMap自定义结果 resultType 和 resultMap 只能同时用一个 <?xml version="1.0 阅读全文
posted @ 2021-09-25 19:22 青橙e 阅读(54) 评论(0) 推荐(0)
摘要:Stream API介绍 Stream API是Java8中处理集合的关键概念,它可以对集合执行非常复杂的操作:查找、过滤、映射等数据操作。 当我们使用一个流的时候,通常包括三个基本步骤: 获取一个数据源(source) 数据转换 执行操作获取想要的结果。 每次转换原有 Stream 对象不改变,返 阅读全文
posted @ 2021-09-25 18:44 青橙e 阅读(281) 评论(0) 推荐(0)
摘要:每天使用 Git ,但是很多命令记不住 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 新建代码仓库 在当前目录新建一个Git代码库 git init 新建一个目录,将其初始化为Git代码库 git init [pr 阅读全文
posted @ 2021-09-25 18:36 青橙e 阅读(79) 评论(0) 推荐(0)
摘要:线程的基本概念 多线程的基本概念:程序、进程、线程。 程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 进程(process)是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。这就是生命周期。进程作 阅读全文
posted @ 2021-09-25 18:24 青橙e 阅读(113) 评论(0) 推荐(0)
摘要:配置JDK版本 配置为JDK1.8 修改settings.xml ,添加如下内容 <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> 阅读全文
posted @ 2021-09-25 00:08 青橙e 阅读(156) 评论(0) 推荐(0)