自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 redis中的持久化(RDB和AOF)

redis中有两种实现持久化的方式。分别是快照和AOF。两种方式可以同时使用,也可以不使用。所谓的持久化就是将内存中的数据,写入到磁盘中。一、快照(RDB)特点:保存的是这一时刻的数据状态,redis默认开启的持久化方式。文件的后缀名是xxx.rdb,所以也成为rdb方式。使用命令:BGSAVE、SAVE,官方推荐只用BGSAVE命令。这两个命令的区别:BGSAVE:当使用BGSAVE创建快照的时候,redis会调用fork来创建一个子进程,有子进程来创建快照将数据写入磁盘,而父进程继续执行

2022-01-18 16:02:49 806

原创 maven中的dependencyManagement

在maven中,使用dependencyManagement元素来提供一种管理依赖版本号的方式。通常会在一个组织或者项目最顶层的父pom中看到。在pom.xml中使用dependencyManagement元素,可以让子项目中引入一个依赖而不用指明版本号。maven会自动向上查找,直到找到一个拥有dependencyManagement元素的pom.xml文件,maven就会使用这里面规定的版本号。好处:这样做的好处就是如果个子项目都引用同一样的依赖,则可以避免在每个使用的子项目里都声明一个版本号,这

2022-01-13 22:34:09 291

原创 new一个对象,底层都做了什么?

我们在写代码的时候,直接new一个对象,这个对象就创建好了,可是在底层这个对象是怎么创建的呢?虚拟机帮我们做了很多事情。虚拟机创建对象的过程图:当我们在new一个类时,首先会验证这个类是否被加载,如果加载了就进行第二步,如果没有则加载这个类。(类的加载机制)类的加载机制:1.加载:将类名.Class文件转换成二进制流,在堆中生成一个代表这个类的java.lang.Class对象。2.验证:验证Class文件是否符合虚拟机的规范,会不会对虚拟机产生危害。3.准备:这一步是在为类中的静态变量在方

2022-01-10 20:35:26 882

原创 SpringBoot配置拦截器

1、编写一个拦截器,实现HandlerInterceptor接口package com.xhj.boot.interceptor;import com.xhj.boot.bean.User;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.serv

2021-09-25 18:16:04 74

原创 Packet for query is too large (4,246,837 > 4,194,304)问题

一、从mysql的安装路径进入mysqlmysql -h localhost -u root -p二、查看show VARIABLES like '%max_allowed_packet%';三、修改方法1、修改配置文件(my.ini)max_allowed_packet = 200M;2、命令行修改,暂时性的set global max_allowed_packet = 2*1024*1024*100;...

2021-09-09 19:26:42 777

原创 单例模式-饿汉式和懒汉式

什么是单例模式?单例模式就是采取一定的方法保证在整个软件系统中,对某一个类的实例化对象之存在一个,并且该类只提供一个取得其对象实例的方法。一、饿汉式饿汉式的实现步骤:1、构造器私有化 (防止直接new)2、类的内部创建对象3、向外部暴露一个静态的公共方法,用于获取对象实例具体代码:package 单例模式;/** * @author xhj * 步骤: * 1、构造器私有化 * 2、类的内部创建对象 * 3、向外部暴露静态的获取对象实例的方法 */public clas

2021-09-09 11:13:39 99

原创 Java多线程的创建和使用

一、方式一:继承Thread类创建线程步骤:1.继承Thread类2.重写run()方法3.创建线程子类对象4.调用start()方法启动线程代码示例:public class Creat_Thread { public static void main(String[] args) { MyThread myThread = new MyThread();// 3 创建子类 myThread.start();// 4 调用start:①启动线程,

2021-09-06 20:55:35 131

原创 redis五大数据类型常用指令

一、基本命令连接redis:redis-cli查看当前所有库的key:keys*添加新的值:set key vluae判断key是否存在:exists key1表示存在,0表示不存在查看key的类型:type key删除指定key的数据:del key或者unlink key设置过期时间:expire key 时间查看时间:ttl key1 代表没有过期,-2代表过期,-1代表永不过期切换数据库:select 数据库号dbsize查看当前数据库的key的数量清空当

2021-05-13 18:22:51 173

原创 linux中安装redis的详细过程

一、下载redis官网地址:https://redis.io/下载后上传到linux中。二、查看linux上有没有gcc如果没有请安装yum install gcc三、解压压缩包cd 到压缩包所在的目录tar -zxvf redis-6.2.3.tar.gz四、编译进入加压后的目录make使用make命令编译,如果没有gcc会报错。编译的过程中如果出现这样的错误解决办法。1、查看是否有gcc环境2、如果gcc环境没有问题,执行make distclean3、再进行

2021-05-08 20:01:10 122

原创 linux文件目录指令

一、基础指令pwd:显示当前目录的绝对路径ls :显示所有目录和文件cd :切换到目录cd ~:回到根目录cd ..:回到上一级目录二、创建文件创建一级目录指令:mkdir 【文件名】创建多级目录指令:mkdir -p 【文件名/文件名/文件名…】创建空文件指令:touch 【文件名】三、删除文件删除一级目录指令:rmdir 【文件名】删除多级目录(慎重选择):rmdir -rf 【文件名/文件名/文件名…】四、拷贝文件指令:cp 【被拷贝文件】【目的

2021-05-04 00:06:00 82

原创 linux用户管理

一、root管理员添加用户默认指令:useradd 用户名注意:需要新建在home目录下,一个用户代表一个文件夹在指定目录下新建用户:useradd -d /home/目录/ 用户名二、设置密码指令:passwd 用户名三、注销用户指令:logout四、删除用户删除用户保留用户目录:userdel 用户名用户目录还在删除用户和用户目录:userdel -r 用户名用户和用户目目录成功删除五、查看用户指令1:id 用户名指令2:who am

2021-05-03 14:30:31 48

原创 pagehepler分页插件

一、pagehelper介绍pagehepler是一款可以帮助我们快速实现分页的插件,总之就是比传统的分页方式方便太多。话不多说,直接上手pagehelper插件的使用。二、需要导入的依赖<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId>

2021-05-02 11:57:34 745

原创 linux关机重启命令

注意:重启或者关机之前尽量先执行sync命令,保存数据shutdown -h now 立刻关机shutdown -h 1 一分钟过后关机shutdown -r now 立刻重启halt 关机reboot 重启sync 把内存的数据同步到磁盘

2021-05-01 22:26:13 89

原创 vi和vim快速入门

什么是vi和vim?vi:linux系统自带的文本编辑器vim:也是linux的文本编辑器,子不过功能更强大。相当于vi增强版。总体来说,vi和vim使用方差不多vi和vim三种模式正常模式linux默认的模式。在这个模式下,使用上下左右键来控制光标的移动。可以使用删除字符或者删除整行来处理档案内容,可以使用复制粘贴。常用快捷键:文本末尾:G文本首行:gg撤销:u光标定位:行号,shift+g输入模式按下i,I,o,O,a,A,r,R等字符可以进入编辑模式。命令模式

2021-05-01 21:05:10 86

原创 安装vmtools

vmtools的作用:使主机可以和虚拟机共享文件,进行文件传输安装步骤1、进入虚拟系统2、选择安装或者重新安装vmtools3、粘贴文件到opt下将刚才复制的文件粘贴在这里4、打开终端,解压执行以下命令出现蓝色目录成功5、安装进入蓝色目录安装vmware.install.pl一路【回车】即可注意:有的版本安装完成后最后一步会提示你是否需要删除,默认是yes,需要选择no,否则会被删掉刚才安装的6、安装gccgcc一般默认会有,通过gcc -v命令查看是否安装

2021-05-01 19:29:27 701

原创 虚拟机快照

虚拟机快照是什么?当我们在使用的过程中,如果系统发生问题,我们可以使用快照功能恢复到虚拟机系统没有发生问题的时候,类似于git怎么使用?右键点击,选择【快照】,选择【拍摄快照】桌面新建一个111文件夹,拍摄快照1桌面新建一个222文件夹,拍摄快照2右键点击,选择恢复到快照1没有222文件夹。回退成功快照会占用内存空间,如果不是关键的步骤,一般不推荐频繁使用快照...

2021-05-01 16:27:09 311

原创 虚拟机克隆

应用场景:在大数据或者分布式需要做集群的时候,可以克隆本地安装好的虚拟机,用于做练习使用。方式一:直接拷贝文件前提是本地已经安装好了一个虚拟系统。然后可以直接复制拷贝。1.复制已经安装好的虚拟系统到一个新文件夹,然后用VM直接打开文件即可方式二:使用VM的克隆功能右键点击已经安装的系统,选择【管理】,选择【克隆】,选择创建完整克隆点击完成即可...

2021-05-01 16:03:02 137

原创 java异步任务

问题:在我们的生活中通常会遇见在邮件发送的时候,在我们点击发送邮件后,一段时间之后才会得到发送成功的响应。那么怎么才能让用户直接获得响应, 而让后台继续处理呢?1、解决这类问题通常会考虑到使用多线程来处理。这里利用多线程的延时来模拟响应时间。 public void hello(){ try{ Thread.sleep(3000); } catch (InterruptedException e) { e.printS

2021-03-05 14:49:58 272

原创 SpringBoot集成Swagger

文章目录SpringBoot集成Swagger配置SwaggerSwagger配置扫描接口配置Swagger开关配置API分组配置实体类常用注解主页换肤SpringBoot集成Swagger1、建立一个SpringBoot项目2、导入依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</arti

2021-03-04 21:30:31 251 2

原创 Shiro基本应用

Shiro简介shiro是一个简单的java安全框架,和SpringSecurity类似。Shiro可以完成,认证,授权,加密,会话管理,Web集成,缓存等。shrio的三大核心对象:subject代表了当前的用户,这个用户不一定是一个具体的人,与当前应用交互的任何东西都是subjectSecurityManager安全管理器,即所有与安全有关的操作都会与SercurityManager交互,并且它管理着所有的Subject,它负责与Shiro的其他组件进行交互,它相当于SpringMV

2021-03-03 23:22:19 135

原创 SpringSecurity常见简单应用

文章目录SpringSecurity简介一、搭建SpringSecurity环境二、认证和授权1、添加授权2.添加认证3、SpringSecurity整合thymeleaf在前端展示问题SpringSecurity简介SpringSecurity是SpringBoot中集成的权限框架,可定制身份验证和权限控制。侧重于为java应用程序提供身份验证和授权。解决之前关于权限的代码十分繁琐,冗余的问题。SpringSecurity主要有两个目标:认证(Authentication)和授权(Authoriza

2021-03-02 21:16:01 290

原创 关于StreamCorruptedException异常的解决方法之一(Exception in thread “main“ java.io.StreamCorruptedException)

先来看打印的异常信息:Exception in thread “main” java.io.StreamCorruptedException: invalid stream header: D6D0B9FAat java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:866)at java.io.ObjectInputStream.(ObjectInputStream.java:358)at test.ObjectStrea

2020-09-26 17:54:52 5687

空空如也

空空如也

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

TA关注的人

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