自定义博客皮肤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)
  • 问答 (1)
  • 收藏
  • 关注

原创 MySQL中trace工具的使用

trace是MySQL5.6版本后提供的SQL跟踪工具,通过使用trace可以让我们明白optimizer(优化器)如何选择执行计划。注意:开启trace工具会影响mysql性能,所以只适合临时分析sql使用,用完之后请立即关闭。

2023-05-22 17:45:29 788

原创 MySQL的聚集索引、非聚集索引、索引覆盖、索引下推

在存储引擎为 InnoDB 的表中,主键索引的类型是聚簇索引,辅助索引的类型是都是非聚簇索引。结合上边对聚簇索引、非聚簇索引的定义,我们可以知道,InnoDB 的表中主键索引中的叶子点上存储了行数据(所有字段的值,而辅助索引叶子节点存储了索引列的值和主键值。

2023-05-22 17:23:47 1878 2

原创 校验使用javax.validation

校验使用javax.validation。

2022-11-04 10:44:46 615

原创 Spring是如何解决循环依赖的?

1、案发情况@Servicepublic class TestService1 { @Autowired private TestService2 testService2; @Async public void test1() { }}@Servicepublic class TestService2 { @Autowired private TestService1 testService1; public voi

2022-04-27 17:17:50 5417 2

原创 微信 JSAPI 支付流程

微信支付

2022-04-08 17:03:00 6920

原创 Fiddler抓包夜神模拟器

安卓手机 Android7 版本之后,手机默认不信任用户证书,即使在手机上安装了 fiddler 证书也不会生效,所以我们就需要吧 fiddler 证书安装到系统证书中。前提:一、需要的安装的软件1、夜神模拟器2、openssl 安装安装方法自行网上安装并配置环境变量3、adb 安装 [需要能连接到夜神模拟器] 自己安装的adb的版本和夜神模拟器里的adb的版本一致我踩过一个坑,就是adb我安装的是1.0.41的版本,但是夜神模拟器...

2022-02-25 10:41:18 4816 2

原创 Scheduled cron表达式

Scheduled cron表达式Cron详解:Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:1.Seconds Minutes Hours DayofMonth Month DayofWeek Year2.Seconds Minutes Hours DayofMonth Month DayofWeek每一个域可出现的字符如下:Seconds: 可出现", - * /"四个字符,有效范围为0-59的整数Mi...

2020-09-22 20:32:24 1849 2

原创 Spring事务自行整理验证

验证目的:Spring的bean:本类方法之间的调用如果入口有声明开启事务,那么不管其他方法是否有声明事务或者新建事务,最终都回之有一个事务进行1、复习下事务的传播机制,spring支持以下事务:传播机制:PROPAGATION_REQUIRED:如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。PROPAGATION_SUPPORTS:支持当前事务,如果当前没有事务,就以非事务方式执行。PROPAGATION_MANDATORY:使用当

2020-08-28 10:40:28 193

原创 Java中IO之NIO

经过查看资料,自我感觉 NIO 和 我们学习Java时候 的 Socket 通信相似,所以在查看有关 NIO 的案例进行记录:IO是同步阻塞IO操作,当线程在处理任务时,另一方会阻塞着等待该线程的执行完毕,为了提高效率,,JDK1.4后,引入NIO来提升数据的通讯性能NIO中采用Reactor设计模式,注册的汇集点为Selector,NIO有三个主要组成部分:Channel(通道)、Buffer(缓冲区)、Selector(选择器)NIO采用了轮询的方式来观察事件是否执行完毕,如: ...

2020-07-24 16:59:45 172

原创 Java中IO之BIO

BIO实际为最原始的io,在java.io包下面,可以理解为Block-io(阻塞io),也可以理解为Base-io(基础io);bio的分类分为:1、输入流和输出流;2、字节流和字符流和缓冲流字节流 --》inputStream / OutputStream ----( 实现类)FileInputStream / FileOutInputSream字符流 --》Reader / Writer ----( 实现类 )FileReader / FileWriter缓冲流 --》Bu..

2020-07-24 15:55:53 196

转载 Spring后置处理器详解

spring-bean创建的生命周期与后置处理器的调用点1.第一次调用BeanPostProcess , InstantiationAwareBeanPostProcessor中的postProcessBeforeInstantiation()方法.try {// Give BeanPostProcessors a chance to return a proxy instead of the target bean instance.// 第一次调用BeanPostProcess...

2020-06-02 10:53:41 2306

原创 Dubbo服务调用过程

我理解的是,当服务启动的时候,会将要注册的服务封装成一个URL 然后往 zookeeper 进行注册,而当我们进行调用的时候,spring会调用getBean的时候,就会创建 NettyClient 对象,构造出一个 Socket 客户端,进行连接服务端最终会调用 HeaderExchangeChannel 的 request 方法,通过 channel 进行请求。Provider 作为被访问方,肯定是一个 Server 模式的 Socket。如何启动的呢?当 Spring 容器启动的时候,

2020-05-21 18:15:55 224

原创 SpringCloud各服务之间调用过程原理

Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、Ribbon、Feign、Hystrix、Zuul这几个组件。一、业务场景介绍假设有个电商网站:1.用户针对一个订单完成支付之后,会寻找订单服务更新订单状态为“已支付”;2.库存服务进行扣减库存操作3.通知仓库服务进行发货4.给用户的这次购物进行相应的积分增加下图为个服务的图解二、Spring Cloud核心组件:Eureka

2020-05-21 17:47:44 5677 4

原创 使用Oracle VM VirtualBox装虚拟机并配置静态IP

下载Oracle VM VirtualBox 安装包并安装 以及 centos7 iso 文件1、新建虚拟电脑2、给虚拟机设置磁盘和内存3、创建磁盘位置4、设置网络模式为桥接模式5、安装并启动安装过程不做说明,系统安装都一样,只要在安装过程中设置 root 用户的密码,开启以太网,完成后就等待安装完成重启机器即可。6、配置静态ip1、修改...

2020-01-10 10:39:52 2936

原创 Linux在线安装MySQL

一、安装mysql1、首先确定linux版本,确定下载对应的RPM。(查看mysql与linux版本对应的资料) yum remove mysql mysql-server mysql-libs mysql-server; find / -name mysql 将找到的相关东西delete掉;2、选择好下载版本,下载该版本。 wget https://...

2020-01-10 10:15:29 1634

原创 Linux安装Nginx以及常用配置

Nginx安装安装如下依赖:yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget步骤一:执行下面命令下载nginx源码wget http://nginx.org/downlo...

2020-01-10 10:00:57 107

原创 Linux安装RabbitMQ以及集群搭建

RabbitMQ安装安装Erlang环境安装依赖 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel安装ncurses yum -y install ncurses-devel安装erlang环境 下载地址 https://pan.ba...

2020-01-10 09:49:59 1416 1

原创 Linux在线安装软件(jdk、redis、zookeeper)

在线安装JDK安装JDK是软件运行的基本环境,该系统需要JDK8+版本的环境,若系统已经安装了JDK7或者更低版本的JDK需要卸载。步骤一:执行下面命令搜索系统上已经安装的JDK rpm -qa | grep -E '^open[jre|jdk]|j[re|dk]'步骤二:执行下面命令,删除已经安装过的JDK(若未找到安装过的JDK版本,则跳过此步) y...

2020-01-10 09:42:56 282

原创 Linux两种防火墙的基本命令(firewalld 和 iptables)

Linux常用的两种防火墙管理firewall防火墙一、防火墙的开启、关闭、禁用命令(1)设置开机启用防火墙:systemctl enable firewalld.service(2)设置开机禁用防火墙:systemctl disable firewalld.service(3)启动防火墙:systemctl start firewalld(4)关闭防火墙:systemct...

2020-01-10 09:21:02 379

原创 Linux防火墙设置(不用firewalld,使用iptable作为防火墙)

iptables 的安装与配置(不用firewalld,使用iptable作为防火墙)由于centos7默认是使用firewall作为防火墙,下面介绍如何将系统的防火墙设置为iptables。#service firewalld status; #查看防火墙状态(disabled 表明 已经禁止开启启动 enable 表示开机自启,inactive 表示防火墙关闭状态 ac...

2020-01-10 09:17:22 644

原创 Linux基本命令

基本命令w 保存内容,但不退出vim编辑器:w! 强制保存编辑内容:wq 保存文件人内容并推出编辑器:Wq! 保存文件内容并退出编辑器:q 在未做任何编辑处理而准备退出vim时,可以使用此命令:q! 强制退出,放弃编辑处理结果:w filename 把编辑处理后的结果写到指定的文件中保存:w! filename 把编辑处理后的结果强制保存到指定的文件中,如果文件已经...

2020-01-10 09:16:23 124

原创 关于IDEA的一些快捷键记录和常用设置

快捷键:Ctrl+Shift + Enter,语句完成Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当前文件的结构Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择Ctrl+N,可以快速打开类Ctrl+Shift+N,可以快速...

2020-01-08 09:35:38 457

空空如也

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

TA关注的人

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