自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 资源 (3)
  • 收藏
  • 关注

原创 读深入理解JVM(2)--垃圾回收

深入理解JVM(2) 对象存活判断算法 引用计数法 给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1; 当引用失效时,计数器就减1; 任何时刻计数器都为0的对象就是不可能再被使用的。 问题:很难解决对象之间的互相循环引用的问题。 可达性分析算法 通过一系列名为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(Reference Chain),当一个对象到GC Roots没有任何引用链相连(从GC Roots到这个对象不可达),则证明此对

2021-04-12 17:39:10 172

原创 读深入理解JVM(1)--运行时数据区

深入理解JVM(1) 运行时数据区 根据《java虚拟机规范(第二版)》的规定,java虚拟机所管理的内存将会包括以下几个运行时数据区域 方法区 堆 本地方法栈 虚拟机栈 程序计数器 蓝色表示由所有线程共享的数据区,绿色表示为线程隔离的数据区。 程序计数器(线程私有) 作用:当前线程所执行的字节码的行号指示器。 由于java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,所以在任何一个确定的时刻,一个处理器只会执行一条线程中

2021-04-12 17:35:32 175

原创 oracle 19c 离线安装

oracle下载 https://www.oracle.com/database/technologies/xe-prior-releases.html 1、配置yum源 cd /etc mv yum.repos.d yum.repos.d.bak mkdir yum.repos.d wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecach

2021-01-26 12:55:19 1936

原创 导出导入EasyExcel设置样式的util、模板格式校验

import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.metadata.style.WriteCellStyle; import com.alibaba.excel.write.metadata.style.WriteFont; import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; import com.alibaba.fastjson.JSON; i

2020-12-17 15:29:26 1306 1

原创 安装docker以及docker部署微服务示例

docker介绍 1 docker安装 以centos为例 1.docker要求centos内核版本高于3.10 2.查看内核版本 uname -r 3.确保yum包更新到最新 yum -y update 4.卸载旧版本 yum remove docker docker-common docker-selinux docker-engine 5.安装需要的软件包 yum install -y yu...

2020-03-13 18:52:29 985 2

原创 kkfileview:预览自签https word文件 出现unable to find valid certification path to requested target

ssl

2022-06-23 17:11:49 3149 2

原创 IDEA 不显示项目 全部 project 视图

从 git 上下载的项目 maven 项目 IDEA 不显示项目 project 视图??? 方案:关掉项目,删除 “.idea” 目录,重新打开项目

2022-05-24 15:49:37 1399

原创 gitlab集成jmeter

前提: 需要一套安装好了gitlab 的服务器,并且配置好了gitlab runner(并且开发人员需要配置好自己的邮箱地址) 需要在项目部署的服务器上安装python3 需要在gitlab 的服务器上安装sshpass,maven 自己编写好需要执行的jmeter脚本 需要弄一个邮箱服务器,我这里用的是163邮箱 1、先在jmeter的文件下拷贝一下几个文件到java项目的test目录 其中的jmx文件为需要执行的jmeter脚本文件 2、在jav

2021-07-27 09:56:30 1092

原创 oracle 19c 离线安装到服务器

oracle下载 https://www.oracle.com/database/technologies/xe-prior-releases.html 登陆邮箱 1450031181@qq.com 1、配置yum源 cd /etc mv yum.repos.d yum.repos.d.bak mkdir yum.repos.d wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Cen...

2021-07-27 09:53:15 549

原创 linux命令

nmtui 进入网络管理

2020-04-13 10:26:08 160

原创 批量导入数据

使用LOAD DATA INFLIE ,比一般的insert语句快20倍 select * into OUTFILE ‘D:\product.txt’ from product_info load data INFILE ‘D:\product.txt’ into table product_info

2020-03-20 18:11:31 229

原创 mysql执行计划

使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 语法: Explain + SQL语句 执行计划id select 查询的徐利好,包含一组数字。表示查询中执行select子句或操作表的顺序 三种情况: 1.id相同,执行顺序是由上到下 2.id不同,如果是子查询,id的序号会递增。id的值越大,优先级...

2020-03-20 17:01:08 144

原创 nginx限流

一般情况下,首页的并发量是比较大的,即使有了多级缓存,如果有大量恶意的请求, 也会对系统造成影响。而限流就是保护措施之一。 nginx提供两种限流的方式: 一是控制速率 二是控制并发连接数 控制速率 控制速率的方式之一就是采用漏桶算法。 漏桶算法实现控制速率限流 漏桶(Leaky Bucket)算法思路很简单,水(请求)先进入到漏桶里,漏桶以一定的速度出水(接 口有响应速率),当水流入速度过大会直...

2020-03-19 14:17:48 175

原创 lua学习

安装 yum install -y gcc yum install libtermcap-devel ncurses-devel libevent-devel readline-devel curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz tar -zxf lua-5.3.5.tar.gz make linux test make instal...

2020-03-19 13:45:23 197

原创 nginx学习笔记

1、操作 ./nginx -s 消息 quit 退出、关闭 stop 快速的退出关闭 reload 重新加载配置文件 reopen 重写打开日志文件 start 启动 如果在重启过程中提示打不开进程文件,可以执行以下命令 ./nginx -c /usr/local/nginx/conf/nginx.conf 2、工作原理 nginx是由内核和模块组成,nginx内核是工作的比较...

2020-03-18 16:16:10 400

原创 Docker没有vi命令

执行以下 apt-get install vim Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package vi apt-get update apt-get install vim

2020-03-17 21:18:39 410

原创 docker nginx

问题 docker部署个nginx,实在是再简单不过了吧 #拉取镜像 docker pull nginx #启动一个容器 docker run --name docker_nginx -d -p 80:80 docker.io/nginx 就运行起来了 但是存在的问题是: 1.日志哪儿去了? 2.修改了配置文件怎么办? 3.项目的文件放在哪儿 一般来说,解决的办法就是把文件放在宿主机,然后挂载...

2020-03-17 21:17:04 2559 2

原创 Linux设置本地域名

更改主机名 使用hostname命令就可以查看Linux的主机名 可以使用如下命令来修改主机名 hostnamectl set-hostname eaglezsx 也可以修改其配置文件/etc/hostname里边的内容 设置本地域名解析 在/etc/hosts文件中添加一句话 192.168.188.1 www.baidu.com 保存文件后再ping一下www.baidu.com就会连接到...

2020-03-17 21:14:05 7903

原创 java类初始化以及实例的初始化

首先定义一个父类 /** * @author Fbin * @date 2020/3/12 * @annotation 高山仰止, 景行行止.虽不能至, 心向往之 */ public class Father { //成员变量 public int i = test(); //静态成员变量 public static int j = method(); /...

2020-03-12 12:14:11 359

原创 缓存穿透、缓存击穿、缓存雪崩

1、缓存穿透 数据库中没有这条数据,缓存中也没有这条数据(危害:查询了数据库,不应该让他查询数据库) 解决: 1、缓存空对象(简单,好维护,但是效果不是很好) 当查询数据库中没有这条数据的时候,也把这条数据加入缓存,只让他查询一次。并且在从redis取出时判断是否为空对象,返回相应的结果,说明是一个不存在的数据 问题:第一,可以换一个key再一次查询,仍然会查询数据库;第二,如果查询大量的空对象后...

2020-03-11 21:46:14 162

原创 jdk1.8 hashMap的put学习

//put方法 public V put(K key, V value) { return putVal(hash(key), key, value, false, true); } //hash算法 static final int hash(Object key) { int h; // 取key的hashcode值的低16位 和 key的hash...

2020-03-11 16:36:42 280

原创 mongodb操作

数据库 1、查询数据库 show dbs 查询全部数据库 db 显示当前数据库 2、创建数据库 命令格式: use DATABASE_NAME 例子: use test02 有test02数据库则切换到此数据库,没有则创建。 注意: 新创建的数据库不显示,需要至少包括一个集合。 3、删除数据库(慎用!!!) 命令格式: db.dropDatabase() 例子: 删除test02数据库...

2020-03-11 12:09:02 315

原创 java连接mongodb

添加依赖 <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo‐java‐driver</artifactId> <version>3.4.3</version> </dependency> 连接 @Test ...

2020-03-11 11:52:02 202

原创 docker拉取mongodb创建用户

docker pull mongo (拉取镜像 默认最新版本) docker images (查看镜像) docker run -p 27017:27017 -td mongo (启动镜像) docker ps (查看启动的镜像) docker exec -it 镜像id /bin/bash (进入容器) mongo (进入mongodb) 下面是安装完之后,正确的执行步骤,创建管理账户用户和普通...

2020-03-11 11:42:53 412

原创 mybatis-plus简单的代码生成

1、添加maven依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.1.tmp</version> </depend...

2020-03-02 18:27:21 208

原创 调用熔断解决方法

正常访问时这里可能会在第一次访问时,就会进入fallback方法(这种现象不一定会出现)。是因为hystrix的超时机制。这个可以通过配置来解决此处提供三种方式,如下: 第一:设置超时时间变长,默认是1000毫秒 hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=5000 第二:不设置超时时间 hyst...

2020-02-13 18:33:51 1604

原创 密码正则

package com.example.exceptiondemo.util; /** * @author FBin * @date 2019/12/2 10:26 */ public class CheckPassword { //6-12位,至少包括数字、字母两种组合 public static final String PW_PATTERN_ONE = "^(?=....

2019-12-27 14:42:56 530

原创 正则

第一种 至少8-16个字符,至少1个大写字母,1个小写字母和1个数字,其他可以是任意字符: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,16}$/ /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[\s\S]{8,16}$/ 其中 [\s\S] 中的\s空白符,\S非空白符,所以[\s\S]是任意字符。也可以用 [\d\D]、[\w\W]来表示。...

2019-12-27 12:18:05 252

原创 数据库Long类型,查出来到前端解析丢失精度

使用@JsonSerialize(using = ToStringSerializer.class) 加到该字段上面

2019-12-25 15:30:35 859 3

原创 单点登录

一、登录机制 http无状态协议 web应用采用B/S架构,使用http作为通信协议。 http是无状态协议,浏览器的每次请求,服务器都会单独处理,不与之前的请求或者之后的请求产生关联 但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合法请求,忽略非法请求;要鉴别浏览器请求,必须清楚浏览器请求状态。...

2019-12-24 21:54:55 287

原创 Mysql - 为什么表数据删掉一半,表文件大小不变?

Mysql - 为什么表数据删掉一半,表文件大小不变? 一:概念 这里,我们还是针对 MySQL 中应用最广泛的 InnoDB 引擎展开讨论。 一个 InnoDB 表包含两部分,即:表结构定义和数据。 在 MySQL 8.0 版本以前,表结构是存在以.frm 为后缀的文件里。 而 MySQL 8.0 版本,则已经允许把表结构定义放在系统数据表中了。 因为表结构定义占用的空间很小...

2019-12-16 17:28:31 636

原创 使用vue-cli初始化项目

一、首先安装node与npm 查询node的版本 node -v 查询npm的版本 npm -v 二、安装vue-cli 1、命令 npm install -g vue-cli ``` 安装后可用vue -V 查看版本 三、初始化项目 ```vue init webpack myvue //myvue 是项目名 cd myvue 进入创建的项目 启动脚手架 npm run dev 点击链...

2019-12-09 22:38:44 386

原创 linux优化

##关于linux服务器优化 服务器并发优化 Linux优化 基本服务器信息查询 CPU数 cat /proc/cpuinfo |grep “processor”|wc -l 核心数 cat /proc/cpuinfo |grep “cores” 文件句柄数优化环节: ulimit -a 查看文件句柄数 修改linux系统参数 vi /etc/security/limits.conf 在末尾添加 ...

2019-12-06 18:00:35 348

原创 vscode快捷键

常用 General 按 Press 功能 Function Ctrl + Shift + P,F1 显示命令面板 Show Command Palette Ctrl + P 快速打开 Quick Open Ctrl + Shift + N 新窗口/实例 New window/instance Ctrl + Shift + W 关闭窗口/实例 Close window/...

2019-12-05 11:12:03 176

原创 git安装,命令,SSH配置

Window 上安装Git 32 位安装包下载地址 : https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/Git-2.16.2-32-bit.exe 64 位安装包下载地址 : https://github.com/git-for-windows/git/releases/download/v2.1...

2019-12-05 11:04:52 236

原创 mysql_修改数据库某个字段按中文排序,不需要更改sql,按首字母排序

先打开数据库图形化工具,选择要修改的某张表,打开设计表,找到需要设置的字段,修改字符集为gbk,修改排序规则为gbk_chinese_ci 就ok了

2019-11-15 11:50:43 292

原创 Java返回零长度数组或空集合,避免返回null

使用工具类Collections的emptyList()进行返回 public List test(){ return null; } 改为 public List test(){ //返回长度为0的空集合 return Collections.emptyList(); }

2019-11-08 18:31:24 1150 1

原创 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'a.log_id'

Caused by: java.sql.SQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘a.log_id’ which is not functionally dependent on columns in GROUP...

2019-10-23 16:53:31 341

原创 驼峰命名转为下划线命名

public static String humpToUnderline(String para) { StringBuilder sb = new StringBuilder(para); //偏移量,第i个下划线的位置是 当前的位置+ 偏移量(i-1),第一个下划线偏移量是0 int temp = 0; for (int i = 0; i < para.length();...

2019-10-22 18:32:06 623

原创 mybatis Integer类型 枚举类型 status = 0 的小坑

Mybatis在进行<if test="status != null and status != ''">判空操作时,如果status为0的时候,该判断条件的值为false,也就是说Mybatis此时把0作为 ""来进行判断的! status 若为对象数据类型(例integer)就去掉为""判断 若为其他可以自定义在server参数处理成自定义的值 改成 <if test="s...

2019-10-22 18:21:03 759

datafactory软件

DataFactory是一种快速生产测试数据的可视化工具,是一种强大的数据生成器,该工具支持DB2、Oracle、Sybase、SQL Server数据库,支持ODBC连接方式,且通过ODBC连接使用MySQL数据库。

2020-12-29

jdk8,window,64位

java开发,jdk,跨平台跨系统

2020-12-31

空空如也

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

TA关注的人

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