自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 线上MQ消息堆积了怎么处理?被面试官问麻了

面试官:我看你简历上有使用RabbitMQ的经历,那你能说说如果现在线上MQ消息大量堆积,需要你处理,你要怎么解决?小小:把队列删了这样就看不到堆积了。面试官:好好好,果然是百年难得一遇的天才。小小:那我面试通过了?面试官:滚出去!

2024-03-27 20:11:27 319

原创 Redis持久化策略和优缺点

什么是持久化?持久化就是将数据从内存保存到磁盘的过程,其目的就是为了防止数据丢失。为什么要这样做?因为内存中的数据在重启服务器后就会丢失,而磁盘上的数据则不会,因此为了系统稳定,我们就需要把数据进行持久化。

2024-03-25 19:57:03 954

原创 Redis高频八股文与解决策略

Redis是一个高性能的非关系型的键值对数据库,使用C编写实现的。与传统的数据库不同的是Redis是存在内存中的,所以读写速度非常快,每秒可以处理超过10万次的读写操作,这也是Redis常常被用作缓存的原因。

2024-03-19 21:20:07 811

原创 ES多种分页方案以及深分页处理

ElasticSearch 是一个实时的分布式搜索与分析引擎,常用于大量非结构化数据的存储和快速检索场景,具有很强的扩展性。纵使其有诸多优点,在搜索领域远超关系型数据库,但依然存在与关系型数据库同样的深度分页问题,本文将介绍ES的多种分页方式以及深分页的处理。

2024-03-10 21:21:13 1686

原创 面试重灾区之HashMap

HashMap是实现Map接口的用于映射key-value键值对的双列集合,在JDK1.8中其底层是基于数组+链表+红黑树实现的,是非线程安全的集合类。

2024-03-05 08:15:00 2134

原创 适合JAVA新人的知识点——Integer缓存

适合java新人的知识点——Integer缓存

2024-03-02 21:32:58 388

原创 redis的key过期事件

redis的key过期事件

2024-02-29 21:19:01 518

原创 SpringBoot 中实现订单30分钟自动取消

SpringBoot 中实现订单30分钟自动取消

2024-02-29 21:11:57 498

原创 fast-fail的源码解读

java的集合中有

2022-02-19 15:30:22 591

原创 linux系统下获取ip地址的方法

最近写了一个针对MQ的日志错误记录,因为是微服务的架构,所以要求把服务的Ip地址也记录下,原本以为可以使用InetAddress.getLocalHost();直接获取,但使用后发现在linux下会直接获取localhost,也就是127.0.0.1,所以写了这篇文章,记录一下解决方法

2022-02-08 17:01:22 2559

原创 JAVA导出报表之POI

关于Excel导出JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI 。jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel。而poi可以操作Excel95及以后的版本,即可操作后缀为 .xls 和 .xlsx两种格式的excel。所需jar包: <dependency> <groupId>org.apache.poi</groupId> <artifactI

2021-05-30 22:03:16 243

原创 Mybatis之逆向工程

本文介绍关于Mybatis逆向工程的使用,可自动生成pojo,dao层和mapper映射文件。db.properties配置:存放数据库信息jdbc.url=jdbc:mysql://localhost:3306/bookstore?serverTimezone=Asia/Shanghaijdbc.username=rootjdbc.password=123456jdbc.driver=com.mysql.cj.jdbc.DrivergeneratorConfig.xml配置(逆向工程配置)

2021-05-29 21:03:54 197

原创 Mybatis入门(下)

注:本文是对本人的Mybatis入门(中)的补充,或者说进阶,是在程序跑起来的基础上进行。关于Mybatis的入门教学关于动态sqlMyBatis的映射文件中支持在基础SQL上添加一些逻辑操作,并动态拼接成完整的SQL之后再执行,以达到SQL复用、简化编程的效果。...

2021-05-29 20:42:42 84

原创 Mybatis入门(中)

注:本文是对本人的Mybatis入门(上)的补充,或者说进阶,是在程序跑起来的基础上进行。关于Mybatis的入门教学1.Mybatis的CRUD操作Mapper文件的编写<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.

2021-05-10 23:11:13 110

原创 Mybatis入门(上)

关于Mybatis的入门教学关于mybatis使用的初步介绍,包含ORM框架的概念,项目配置,更换数据源,多表查询,动态sql等操作。1.ORM框架的概念ORM(Object Relational Mapping)对象关系映射,将程序中的一个对象与表中的一行数据一一对应。ORM框架提供了持久化类与表的映射关系,在运行时参照映射文件的信息,把对象持久化到数据库中。提到ORM框架就不得不提两个框架,SSM和SSH,其中的H是指Hibernate,M是指Mybatis,二者都是常用的ORM框架,但M

2021-05-09 21:13:31 104

原创 cookie&session

cookie&session要了解cookie与session首先就要知道一个概念——会话;会话的概念用户打开浏览器,浏览不同的网页,发出多个请求,直到关闭浏览器的过程,称为一次会话(多次请求). 如同打电话。我们在会话的过程(多次请求)之中,用户可能会产生一些数据,这些数据有的需要保存起来的,我们就可以通过会话技术来保存用户各自的数据。常用的会话技术:CooikeCookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器

2021-04-29 23:31:44 790 2

原创 tomcat中的乱码问题

关于servlet乱码的问题解决:1.请求乱码我们在输入一些中文数据提交给服务器的时候,服务器解析显示出来的一堆无意义的字符,就是乱码。那么这个乱码是如何出现的呢?如下图所示:解决方法如下://get方式不需要处理的(tomcat8之后已经处理了)//post方式,请求参数在请求体里面request.setCharacterEncoding("utf-8");2.响应乱码当服务器向浏览器输入数据时出现乱码问题,即响应用户请求时出现乱码//1. 设置服务器编码为utf-8//2. 告

2021-04-18 21:04:53 187

原创 转发和重定向

转发和重定向重定向重定向的定义:请求重定向指的是一个web资源收到客户端请求后,通知客户端去访问另外一个web资源,这称之为请求重定向。例如A向B请求数据,B告诉A它这里没数据,把C的地址给A,让A去找C请求数据。那么A就是发送了两次请求。关于重定向...

2021-04-18 20:31:44 141 1

原创 浏览器文件下载

关于在浏览器设置文件的下载非框架法,仅供学习什么是文件下载呢?就是将服务器上已经存在的文件,输出到客户端浏览器.说白了就是把服务器端的文件拷贝一份到客户端, 文件的拷贝—> 流(输入流和输出流)的拷贝。文件下载的方法一(不推荐):链接的方式:直接将服务器上的文件的路径写到href属性中.如果浏览器不支持该格式文件,那么就会提示进行下载, 如果浏览器支持这个格式(eg: png, jpg…)的文件,那么直接打开,不再下载了。那么在浏览器直接放置超链接即可。//在web下创建download文

2021-04-16 21:33:16 673 1

原创 垃圾分代回收机制简单介绍

针对GC的简单介绍JVM对自己的内存进行了划分5个区域,分别是堆,栈,方法区,本地方法栈,程序计数器。Java中对每一种类型都规定了具体的不可变的大小。所以所有的内存都是由JVM自动分配,所有的内存管理和回收都是由JVM自动进行的。对象的回收是由垃圾收集器(Garbage Collector)执行的。默认堆内存的使用率超过70%的时候,会启动GC。那么堆内存是如何划分的呢?在堆内存中划分为新生代(Young Generation)和老生代(Old Generation),新生代中又分为幸存者区(S

2021-04-14 22:54:46 880 3

原创 关于多线程的学习(下)

关于多线程的学习(下)提到多线程,那必然提到经典题目——生产者消费者模式,使用多线程的方式模拟

2021-04-13 20:36:51 725 5

原创 关于多线程的学习(上)

关于多线程的初步学习线程的概述进程:在内存中正在执行的程序。一个应用程序如果想被执行,需要跑在内存中。线程:是进程的一个执行单元,用来负责进程中程序(代码)的执行。在进程中可以有一条线程,也可以有多条线程。如果只有一条线程,称之为单线程程序。如果有多条线程,称之为多线程程序。一个进程至少需要一条线程。java中线程使用抢占式调度:线程具有优先级,优先级高的抢占到线程CPU资源概率会更大。如果线程的优先级相同,那么会随机选择一个线程执行。...

2021-04-12 22:32:46 1273 5

原创 关于JS正则匹配的一个坑

最近发现在JS里的正则匹配有一个坑,而且很莫名奇妙,一度让我怀疑出现了灵异事件。下面是踩坑代码 var str=["二七1","二七2","金水","二七3","二七4","二七5"] var reg=new RegExp("二七","g"); for(var i=0;i<str.length;i++){ if(reg.test(str[i])){ console.log(str[i])

2021-04-11 22:45:50 2763 6

原创 JDK1.8中HashMap的部分创建流程的个人观点

关于HashMap的部分创建流程前言:最近学习了HashMap有关的一些方法与理念,所以萌生了写一篇有关HashMap的文章,仅是个人理解,欢迎理性探讨。下面是个人对于HashMap的一些理解。Map接口首先我们要了解HashMap的父接口Map,关于Map接口,我们可以翻看官方的API,里面有它的实现类以及定义。All Known Implementing Classes:, HashMap, Hashtable, IdentityHashMap, LinkedHashMap, Render

2021-03-20 19:19:01 1413 9

JAVA-JDK1.8安装包

JAVA--JDK1.8安装包,使用后可以在本地安装JAVA 1.8的JDK,用于JAVA开发;JAVA--JDK1.8安装包,使用后可以在本地安装JAVA 1.8的JDK,用于JAVA开发;JAVA--JDK1.8安装包,使用后可以在本地安装JAVA 1.8的JDK,用于JAVA开发;JAVA--JDK1.8安装包,使用后可以在本地安装JAVA 1.8的JDK,用于JAVA开发;

2024-06-20

空空如也

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

TA关注的人

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