自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 postgre计算两个日期间的工作日,不包含特殊节假日

【代码】postgre计算两个日期间的工作日,不包含特殊节假日。

2024-07-02 10:31:44 151

原创 Arthas生产环境查看方法入参、出参以及异常堆栈

【代码】Arthas生成环境查看方法入参、出参以及异常堆栈。

2023-12-30 12:35:05 1809

原创 Arthas生产环境反编译、编译、热加载

【代码】Arthas生产环境反编译、编译、热加载。

2023-11-28 21:25:34 1032

原创 Arthas查看数据库durid数据源情况

【代码】Arthas查看数据库durid数据源情况。

2023-11-21 21:14:53 873

原创 Undertow服务器禁用不安全的请求类型

Undertow服务器禁用不安全的请求类型

2022-06-22 18:35:14 652 1

原创 Java微服务组件Spring cloud ribbon源码分析

微服务组件Spring Cloud Ribbon源码分析_哔哩哔哩_bilibiliRibbon源码分析 | ProcessOn免费在线作图,在线流程图,在线思维导图 | 1、什么是ribbon? 1、什么是客户端的负载均衡 2、什么是服务端的负载均衡 2、快速整合ribbon 3、源码分析...

2022-05-09 22:44:19 423

原创 去除js代码混淆的方法,亲测有效

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><div id="divTest"></div></body><script> document.getElementById('di.

2021-08-05 15:16:32 3756 2

原创 window.open + postMessage实现打开弹框,并且在子页面接收参数,亲测有效

父页面写法: // 要打开的页面地址 var url = "http://127.0.0.1/demo"; // 样式 var sFeatures = "dialogWidth:490px;dialogHeight:310px;scroll:no;status:no;"; // 参数 var arg= new Object(); arg.id = "1"; arg.name = "zhangsan"; // 打开子窗口 w

2021-08-05 15:03:51 3721

原创 查看Linux系统上的文件系统磁盘使用情况 - df 命令

1、Linux df 命令df(disk free) 命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计2、语法df 【选项】【参数】3、查询系统磁盘整体使用情况①、df -l ②、df -lh ③、df -lh /目录 查看某个目录的磁盘使用情况 ...

2020-12-11 17:27:39 1039

原创 MySQL一条sql语句查出表中不同字段(列)的数量 - COUNT( DISTINCT column_name)或者COUNT( DISTINCTROW column_name)

首先创建一张书籍表,建表语句和初始化数据如下:CREATE TABLE `book` ( `id` int(20) NOT NULL, `book_name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '书名', `press` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT N.

2020-12-04 16:10:33 4168

原创 由一条超级慢的全表查询sql导致MySQL服务故障引发的深思

1、起因某晚上忽然发现应用报错:Could not open JDBC Connection for transaction,获取不到数据库连接了。数据库配置的最大连接数是2000,正常情况下,是不会出现这种问题的。那么,是什么原因导致这种现象出现的呢?2、分析解决过程于是,使用show full processlist查看数据库连接占用情况,发现连接数已经占用满了。而且连接占用的时间都比较长,就算是一个简单的sql也等待了很长时间还是没有执行完。所以导致无法获取连接的情况。继续分析这些连接

2020-12-02 21:24:41 2400 1

原创 查看linux服务器mysql的安装位置和所属磁盘分区

1、使用ps -ef | grep mysql查看mysql的进程情况

2020-12-02 18:38:49 2531

转载 mysql查看连接池最大连接数以及连接使用情况

1 2 show variables like'%max_connection%'; 查看最大连接数 setglobal max_connections=1000; 重新设置最大连接数 1 2 3 4 5 6 7 8 9 10 11 mysql> show status like'Threads%'; +-...

2020-12-01 22:57:51 5791 1

原创 mysql的show processlist命令大作用

mysql的show processlist命令大作用1.当连接数据库时,报错“too many connections”,就可使用此命令查看有哪些线程正在执行2.主要列解释- command 列,显示当前连接的执行的命令,一般就是休眠( sleep ),查询( query ),连接( connect )- time: 执行时间,单位秒- state: 当前连接的sql语句的状态,很重要的列,state只是语句执行中的某一个状态,这个命令中最关键的就是state列,mysql列出的状态主要

2020-12-01 22:32:40 760

原创 mysql查下执行时间长的sql,并强制结束耗时长的sql

1、select Id,User,Host,db,Time,Info from information_schema.`PROCESSLIST` where info is not null; 2、SHOW PROCESSLIST; 使用SHOW PROCESSLIST语句查看哪些线程正在运行,并使用KILL thread_id语句终止一个线程。例如:kill 23...

2020-12-01 21:55:55 2995

原创 GIT删除远程分支和本地分支的命令

1、删除远程分支命令:git push origin --delete 分支名git push origin --delete fixbug/test2、删除本地分支命令:git branch -d 分支名git branch -d fixbug/test

2020-07-13 16:07:36 239

原创 Spring注解方式实现类的多例模式以及注入使用时怎么使用

1、声明方式@Component@Scope("prototype")public class DemoPrototype { ...}2、其它类要注入改类时注意:不能直接使用@Autowired,否则注入的还是单例,需要使用工厂。@Autowiredprivate ObjectFactory<T> objectFactory;对象进行注入(T为你要注入的类),想要使用该多例对象时,用T t = objectFactory.getObject();

2020-07-11 19:29:08 1451

原创 @Valid对List中的实体类的属性校验的两种解决方案

1、实体类注解@Builder@Datapublic class User{ @NotBlank(message = "姓名不能为空!") private String name; @NotBlank(message = "性别不能为空!") private String gender;}2、请求报文中如果有“list”属性,解决方案如下:请求报文:{ "list": [ { "name": "Tom", "gende

2020-06-21 18:19:01 5560

原创 雪花算法等生成Long类型的长Id返回给前端精度丢失问题解决方案

添加一个配置类HttpMessageConverters ,即可完美解决!@Configurationpublic class JsonHttpMessageConvert { @Bean public HttpMessageConverters fastJsonHttpMessageConverters() { FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverte.

2020-05-23 16:00:05 1814 1

原创 Stream流开发常用转换

1、将List<Object>转换为List<String>new ArrayList<Object>().stream().map( t -> t.toString()).collect(Collectors.toList());

2020-05-23 12:39:09 336

原创 linux创建单极目录和多级目录

mkdir /home/dog 创建单级目录mkdir -p /home/dw/dog 创建多级目录

2020-04-09 18:08:56 301

原创 gradle编译警告:有关详细信息, 请使用 -Xlint:deprecation 重新编译。

在项目的build.gradle中添加如下配置:allprojects { gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"...

2020-04-07 16:14:08 2668

原创 RestTemplate调用的请求返回类型是void,请求中使用输出流OutputStream.write()时如何获取到输出流(亲测有效)

今天做项目时,需要调用另一个项目的下载图片的请求,而这个请求返回值时void,并且通过OutputStream.write()输出输出流,一时间不知道如何获取到。经过查验资料,得到如下方法。请求中的代码如下:public void downLoadPic(){ ...省略部分代码... OutputStream os = response.getOutputStre...

2019-12-31 15:26:46 2425

原创 Mysql的 LFET/RIGHT JOIN查询慢的原因之一

今天在做项目的时候,发现有一个接口的查询速度特别慢,要一分多钟,直接导致接口超时。查看接口的sql,发现是一个左连接SELECT A.* FROM A LEFT JOIN B ON A.id = B.fid WHERE A.age = 18 AND A.TIME_ IS NOT NULL ORDER BY A.START_TIME_ DESC LIMIT 0,10...

2019-12-11 16:13:06 1206

原创 Mysql创建用户,授权本机和外网都可以登录。

1、方式一:创建用户时默认本机可以登录,授权外网可以登录。语法:CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;/*刷新*/flush privileges;示例:CREATE...

2019-10-18 11:47:22 856

原创 Mybatis入门案例即环境搭建(IDEA版)

1、概述2、创建maven工程下一步:下一步:下一步:创建完成,如下图3、配置pom.xml,添加所需依赖<!--打包方式jar--> <packaging>jar</packaging> <dependencies> <!--mybatis依赖 --&g...

2019-10-12 16:11:30 352

原创 mysql之函数

1、创建语法(函数有且仅有一个返回值)DELIMITER $;CREATE FUNCTION 函数名(参数列表) RETURNS 返回值类型BEGIN 函数体END$2、使用SELECT 函数名(参数列表)$3、查看SHOW CREATE FUNCTION 函数名4、删除DROP FUNCTION 函数名...

2019-10-09 14:38:50 174

原创 mysql之存储过程

1、含义:一组预先编译好的sql语句的集合,可以理解成批处理语句2、好处:提高sql语句的重用性、简化代码、减少了编译次数和数据库的连接次数,提高了效率3、创建语法CREATE PROCEDURE 存储过程名(参数列表)BEGIN 存储过程体END注意:①、参数列表包含三部分参数模式 参数名 参数类型举例:IN book...

2019-10-09 12:27:10 144

原创 mysql之自定义变量

1、用户变量①、作用域:针对于当前会话(连接有效)②、声明并初始化 SET @用户变量名=值; SET @用户变量名:=值; SELECT @用户变量名:=值;③、更新变量的值方式一: SET @用户变量名=值; SET @用户变量名:=值; SELECT @用户变量名:=值;方式二: S...

2019-10-09 11:19:31 635

原创 mysql之视图

1、什么是视图?视图是mysql5.1版本出现的新特性,是一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果。2、视图的创建CREATE VIEW v1AS SELECT * FROM book UNION ALL SELECT * FROM book_copy;3、视图的使用SELECT * F...

2019-10-08 16:20:16 175

原创 CentOS配置环境变量出错,导致大部分命令无法使用的问题解决。(亲测可行)

今天在虚拟机装了一个jdk1.7,然后去/etc/profile配置JAVA_HOME和PATH后,没有仔细检查配置。导致用户登录后,ls、vi、vim等大多出命令无法使用。 可以想到是/etc/profile文件配置出错了,但现在问题是无法使用vim编辑器。没办法确定问题出在哪。于是就想了一个办法: 第一步:设置临时变量 export...

2019-08-19 17:39:39 1697 1

原创 freemark对千分位数字处理为正常格式,对返回值null处理

1、${(age)?c} 将千分位转换成正常格式2、${(age)! 后台返回null,页面展示空白3、${(createDate?number_to_date)! 时间戳转成yyyy-mm-dd格式

2019-08-12 12:10:42 1504

原创 mysql两个select语句查出来的列一样,合并成一个结果集

使用UNION ALL 关键字假如:SELECT created_by, creation_date, remarks FROM A从A表查出来的结果有3行SELECT created_by, creation_date, remarks FROM B从B表查出来的结果有7行。********************************...

2019-08-09 18:35:40 10815 1

原创 在Util中使用@Autowired注解注入为null的问题解决

@Componentpublic class CrmSupCommon { @Autowired private CrmSupMapper crmSupMapper; public static CrmSupCommon crmSupCommon; @PostConstruct public void init() { crmSupCo...

2019-06-19 16:35:03 1734

原创 Springboot使用@EnableCache缓存

1、pom.xml文件引入依赖<!--缓存 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId></dependency&gt...

2019-04-18 16:33:03 5964

原创 IDEA使用@Data注解,导致实体类的get和set方法报错解决

打开IDEA的设置,搜索Lombok-->Install。安装完成后,重启IDEA即可。如果安装、重启完成后。则再设置下面的选项,即可。

2019-04-18 11:53:09 4985

原创 RabbitMQ的消费者处理消息失败后之重试3次,重试3次仍然失败发送到死信队列。

1、为什么要重试? 如果消费者处理消息失败后不重试,然后发送应答给rabbitmq,rabbitmq就会将队列中的消息删除,从而造成消息的丢失。所以我们要在消费者处理消息失败的时候,重试一定的次数。比如重试3次,如果重试3次之后还是失败,则把这条消息发送到死信队列。 所以我们现在要实现消息的重试,实现效果为: 首先,将消息携带routtingkey的...

2019-04-12 10:31:29 34763 11

原创 RabbitMQ之消息的自动应答、手动应答和消息持久化(Java开发)

1、消息的自动和手动应答boolean autoAck = true;//消息自动应答channel.basicConsume(WQ_QUEUE,autoAck,consumer); 默认情况下,rabbitmq开启了消息的自动应答。此时,一旦rabbitmq将消息分发给了消费者,就会将消息从内存中删除。这种情况下,如果正在执行的消费者被“杀死”或“崩溃”,就会丢失正在处...

2019-04-09 17:00:36 4001

原创 RabbitMQ的六种消息发送模式(Java开发)

要使用RabbitMQ要在pom.xml中引入依赖,如下:<!-- Rabbitmq --><dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.6....

2019-04-09 14:46:19 4215 3

原创 String字符串按照多个字符拆分

1、按照加号"+"和减号"-"拆分字符串String[] arrArea = str.split("[+ -]");

2019-04-02 11:54:17 7513

空空如也

空空如也

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

TA关注的人

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