- 博客(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
原创 批量导入数据
使用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软件
2020-12-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅