自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (1)
  • 收藏
  • 关注

原创 请求日志记录

请求日志记录、切面

2022-11-15 10:43:07 265 1

转载 如何使错误日志更加方便排查问题

在程序中打错误日志的主要目标是为更好地排查问题和解决问题提供重要线索和指导。但是在实际中打的错误日志内容和格式变化多样,错误提示上可能残缺不全、没有相关背景、不明其义,使得排查解决问题成为非常不方便或者耗时的操作。而实际上,如果编程的时候稍加用心,就会减少排查问题的很多无用功。 在阐述如何编写有效的错误日志之前, 了解错误是怎么产生的, 非常重要。 错误是如何炼成的 对于当前系统来说, 错误的产生由三个地方引入: 1. 上层系统引入的非法参数...

2020-12-11 16:05:50 243

原创 Linux环境安装JDK8

1.下载JDK的URL地址,例如:http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm。这个地址可以去Orcale的官网找到。通过wget命令下载:wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-co

2020-09-21 10:19:32 208

原创 中文与UniCode互相转换

public class Tese01 { public static void main(String[] args) { String ss = "\\u0063\\u0068\\u0065\\u0073\\u0062\\u006f\\u0061\\u0072\\u0064\\u002c\\u0062\\u0075\\u006c\\u006c\\u0065\\u0074\\u002c\\u0054\\u0042\\u0043\\u002e"; String s.

2020-07-28 11:30:34 346

原创 PowerMockito的使用

测试环境准备 PowerMock start@RunWith类前添加,可以理理解为提供测试启动环境@RunWith(MockitoJUnitRunner.class)@prepareForTest类前添加。当需要mock final⽅方法、静态⽅方法、私有⽅方法的时候,必须加注解@PrepareForTest 和@RunWith 。注解@PrepareForTest⾥里里写的类是对应⽅方法所在的类。@PrepareForTest({SafTraceRepository.clas...

2020-07-16 14:49:43 2095 2

转载 MySQL百万级数据分页查询及优化

方法1: 直接使用数据库提供的SQL语句 语句样式:MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N 适应场景:适用于数据量较少的情况(元组百/千级) 原因/缺点:全表扫描,速度会很慢 且 有的数据库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3). Limit限制的是从结果集的M位置处取出N条输出,其余抛弃. 方法2:建立主键或唯一索引, 利用索引(假设每页10条) 语句样式:MySQL中,可用如下方...

2020-07-08 16:05:24 242

转载 Spring Cloud @RefreshScope 原理是什么?

要清楚RefreshScope,先要了解ScopeScope(org.springframework.beans.factory.config.Scope)是Spring 2.0开始就有的核心的概念RefreshScope(org.springframework.cloud.context.scope.refresh)是spring cloud提供的一种特殊的scope实现,用来实现配置、实例热加载。Scope -> GenericScope -> RefreshScopei

2020-06-24 15:32:40 219

转载 JAVA随机数生成Int、Long、Float、Double

随机数Int的生成生成无边界的Int@Testpublic void testRandom_generatingIntegerUnbounded() throws Exception { int intUnbounded = new Random().nextInt(); System.out.println(intUnbounded);}生成有边界的Int@Testpublic void testRandom_generatingIntegerBounded_w

2020-06-12 17:30:45 1173

原创 IDEA注释

/** * *@description: *@author: 名字 *@time: ${DATE} ${TIME} * */---------------------* * @description: $params$ * @return: $return$ * @author: 名字 * @time: $date$ $time$ */ params ...

2020-04-25 14:14:38 521

转载 Spring的异步编程冒险记

奇遇一 循环依赖异常看code:@Servicepublic class UserServiceImpl implements UserService { @Autowired UserService userService; @Override @Transactional(rollbackFor = Exception.class, pr...

2020-04-24 16:04:39 156

原创 关于线程池

ublic ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, ...

2020-01-14 17:45:46 102

原创 Spring中的InitializingBean接口的使用

InitializingBean接口为bean提供了初始化方法的方式,它只包括afterPropertiesSet方法,凡是继承该接口的类,在初始化bean的时候都会执行该方法。测试,如下:import org.springframework.beans.factory.InitializingBean;public class TestInitializingBean impl...

2020-01-13 17:50:49 86

转载 mysql优化——show processlist命令详解

SHOW PROCESSLIST显示哪些线程正在运行不在mysql提示符下使用时用mysql -uroot -e 'Show processlist' 或者mysqladmin processlist如果您有root权限,您可以看到所有线程。否则,您只能看到登录的用户自己的线程,通常只会显示100条如果想看跟多的可以使用full修饰(show full processlist...

2020-01-10 15:56:34 82

转载 mysql死锁排查过程

问题:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction的问题解决即Lock wait timeout exceeded; try restarting transaction的异常,错误提示的意思,很明显,是因为这条语句被锁住了,所以释放这个锁。解决方案:我们可以通过到informa...

2020-01-10 15:53:09 296

原创 手动封装事务的简单工具类

import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.datasource.DataSourceTransactionManager;import org.springframework.stereotype.Component;import org.sp...

2020-01-08 09:56:54 281

原创 使用RocketMq事务消息解决分布式事务

事务消息常见的事务处理方式有最终一致性,两阶段,XA,维护本地事务表等,而rocketmq消息中间件就是最终一致性的实现方式之一.rocketmq是怎么实现的呢?RocketMQ producer第一阶段发送Prepared消息时,会拿到消息的地址,第二阶段执行本地事物,第三阶段通过第一阶段拿到的地址去访问消息,并修改消息的状态,如果确认消息发送失败了,RocketMQ会定期扫描消息集群...

2020-01-06 16:29:18 226

原创 Linux查看CPU和内存使用情况

top命令  top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。  运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。  内容解释:第一行(top):...

2019-12-27 18:31:42 115

原创 sar命令使用详解

一:命令介绍:参考资料:http://linux.die.net/man/1/sarsar(System ActivityReporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等,sar命令有sysstat安装包安装,...

2019-12-27 18:29:52 207

转载 shell脚本后台运行

1. 使用&符号在后台执行命令你可以在Linux命令或者脚本后面增加&符号,从而使命令或脚本在后台执行,例如:.$./my-shell-script.sh&2. 使用nohup在后台执行命令使用&符号在后台执行命令或脚本后,如果你退出登录,这个命令就会被自动终止掉。要避免这种情况,你可以使用nohup命令,如下所示:$nohup...

2019-12-27 18:27:52 299

原创 Java批量替换文件

import java.io.File;import java.io.FileFilter;import java.io.IOException;import java.nio.file.Files;import java.nio.file.Path;import java.util.*;public class Main { private static Set<S...

2019-12-05 22:33:42 188

原创 基于1.8的日期工具类

/** * ClassName SafDateUtil * Saf Date operation Util * A processing tool class for the local date time class in java1.8 * * @author wangyu * @version 1.0 * @date May 30, 2019 2:04:34 PM * @s...

2019-11-28 09:48:32 93

原创 基于easypoi的excel导出

近期做了一个报表导出的需求,想着easypoi的便捷性就记录一下。easypoi文档为:http://easypoi.mydoc.io/1.springboot+easypoi4.1.2 <dependency> <groupId>cn.afterturn</groupId> <artifac...

2019-11-26 11:11:48 549

原创 mybatis-generator反向工程

新建maven工程,以来如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schema...

2019-05-23 13:53:09 119

转载 Docker常用命令

systemctl stop firewalld.service 关闭防火墙docker inspect 容器id 查询容器信息docker stop 容器id 停止容器iddocker rm 容器id 删除容器idsystemctl restart docker 重启docker容器docker exec -it 容器ID /bin/bash 进入容器 do...

2019-03-19 15:19:56 91

原创 分布式全局ID之雪花算法

public class IdWorker { private long workerId; private long datacenterId; private long sequence; public IdWorker(long workerId, long datacenterId, long sequence) { // sanity...

2019-02-28 10:11:31 250

原创 Linux搭建环境之安装JDK8篇

1.下载jdk的linux安装包(https://pan.baidu.com/s/11Ip4zsy4uz5-d4KVtBE8Hw)2.建议在/usr/local下解压: tar zxvf jdk-8u171-linux-x64.tar.gz  3.编辑系统环境变量执行 vi /etc/profile     编辑系统配置文件     配置java环境变量export ...

2019-01-09 21:27:44 110

原创 Docker使用篇之搭建GitLab私服

首先确保机器已经安装了docker建议虚拟机内存2G以上1.下载镜像文件docker pull beginor/gitlab-ce:11.0.1-ce.0注意:一定要配置阿里云的加速镜像2.创建GitLab 的配置 (etc) 、 日志 (log) 、数据 (data) 放到容器之外, 便于日后升级, 因此请先准备这三个目录。mkdir -p /mnt/gitlab...

2019-01-05 22:23:27 620 1

原创 Linux搭建环境之安装Keepalived篇

1.下载keepalivedwget http://www.keepalived.org/software/keepalived-1.2.18.tar.gz2.解压安装:tar -zxvf keepalived-1.2.18.tar.gz -C /usr/local/3.下载插件opensslyum install -y openssl openssl-devel(需要安...

2018-12-28 16:52:16 417

原创 Linux搭建环境之安装Nginx篇

Linux安装Nginx 1.安装gcc gcc-c++(如新环境,未安装请先安装) $ yum install -y gcc gcc-c++ 2.安装wget $ yum -y install wget  3.安装PCRE库 $ cd /usr/local/ $ wget http://jaist.dl.sourcefor...

2018-12-25 15:15:19 120

原创 设计模式专题之单例模式

1.单例模式 恶汉式 特点:天生线程安全,效率高,但是不能延迟加载package com.wangyu;/** * 单例模式 恶汉式 * 特点:天生线程安全,效率高,但是不能延迟加载 * @author zjmiec * */public class SingletonDemo1 { // 类初始化立即加载 private static SingletonDemo1 ...

2018-12-06 14:59:50 169

原创 源码分析之手写1.7HahMap(三)

public interface ExtMap&lt;K, V&gt; { // 向集合中插入数据 public V put(K k, V v); // 根据k 从Map集合中查询元素 public V get(K k); // 获取集合元素个数 public int size(); interface Entry&lt;K, V&gt; { K getKey();...

2018-12-06 10:04:38 166

原创 源码分析之基于LinkedList手写HahMap(二)

package com.mayikt.extLinkedListHashMap;import java.util.LinkedList;import java.util.concurrent.ConcurrentHashMap;/** * 基於linkedList實現hashMap * * @author zjmiec * */@SuppressWarnings("unc...

2018-12-05 11:09:05 117

原创 Linux搭建环境之Mysql篇

CentOS7 64位安装MySql教程1. 先检查系统是否装有mysqlrpm -qa | grep mysql2. 下载mysql的repo源wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 报错: -bash: wget: 未找到命令 安装插件 yum -y install wget...

2018-12-03 21:07:06 193

原创 源码分析之基于ArrayList手写HahMap(一)

import java.util.ArrayList;import java.util.List;/** * 基于arraylist实现hashmap集合(简版:效率低) * @author zjmiec * */public class ExtArrayListHashMap&lt;Key, Value&gt; { // map容器 List&lt;Entry&lt;K...

2018-11-30 15:08:58 122

原创 全局ID之redis解决方案

import java.text.SimpleDateFormat;import java.util.Date;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate;import org.spring...

2018-11-30 10:34:51 607

原创 全局ID之雪花算法

/** * Twitter_Snowflake&lt;br&gt; * SnowFlake的结构如下(每部分用-分开):&lt;br&gt; * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - * 000000000000 &lt;br&gt; * 1位标识,由于long基本类型在Java中是带符号...

2018-11-30 10:32:33 644

原创 源码分析之手写ExtLinkedList

public class ExtLinkedList&lt;E&gt; { // 链表实际存储元素 private int size; // 第一个元素(头节点,为了查询) private Node first; // 最后一个元素(尾节点,为了添加) private Node last; // add public void add(E e) { Node node =...

2018-11-29 14:28:39 105

原创 源码分析之手写ArrayList

public class ExtArrayList { // 底层采用数组存放 private Object[] elementData; // 数组默认容量 private static final int DEFAULT_CAPACITY = 10; // 实际arraylist长度 private int size; // 数组初始容量 public ExtArrayL...

2018-11-28 11:45:43 155

原创 Linux搭建环境之安装elasticsearch篇

1.下载elasticsearch安装包下载elasticsearch安装包官方文档https://www.elastic.co/downloads/elasticsearch2.上传elasticsearch安装包    2.1解压elasticsearch tar -zxvf elasticsearch-6.4.3.tar.gz    2.2修改elastic...

2018-11-23 16:57:38 213

原创 基于注解方式纯手写spring-ioc

1.定义注解@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)public @interface ExtService {}2.工具类https://blog.csdn.net/qq_41988225/article/details/843938043.主要功能类package com.w...

2018-11-23 15:27:16 348

空空如也

空空如也

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

TA关注的人

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