自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

伟哥

Java

  • 博客(144)
  • 资源 (1)
  • 收藏
  • 关注

原创 binlog、redo log和undo log的作用以及详细介绍

Mysql

2022-08-30 22:40:53 327 1

原创 MQ进阶面试题

MQ面试夺命连环扣

2022-08-27 17:18:38 419

原创 activeMQ入门

啊啊

2021-06-25 14:24:45 284 1

原创 2021年最新面试基础题

一、Java基础1、基本数据类型:8个:byte、short、int、long、float、double、char、boolean;基本数据类型:数据直接存储在栈上引用数据类型区别:数据存储在堆上,栈上只存储引用地址。2、String、StringBuffer、 StringBuilder的区别:String被final修饰故不可变,线程安全;StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,线程安全;StringBuilder是非线程安全的,相同单线程情况下,StringBu

2021-06-25 09:02:18 292

原创 mysql参数配置优化提升高并发性能

一、调整缓冲池buffer Pool大小和数量 buffer Pool数量越多,能够抗的住的并发越高innodb_buffer_pool_size =innodb_buffer_pool_instances =

2021-06-24 13:30:13 457

原创 JDK1.8 Stream 切分集合

很多时候我们会遇到大批量数据往数据库写的场景,需要手写一个将集合分成很多份然后分批次入库。当我们学习了1.8的Stream之后,会发现这很简单哈JDK1.8 Streampackage com.bootMybatis.util;import java.util.Collection;import java.util.stream.Collectors;import java.util.stream.Stream;/** * @Date: 2021/3/30 22:15 */p

2021-03-30 22:37:56 892

原创 springboot使用Hikari连接池问题:HikariPool-1 - Connection is not available, request timed out after 30000ms

最近项目由Oracle切mysql,在压测时发现一直会有该错误抛出:HikariPool-1 - Connection is not available, request timed out after 30000ms我们知道Springboot 2.X默认的是使用的Hikari连接池,抛出上述错误因为拿不到连接了,最大可能是因为连接池的最大连接数设置的小了;创建连接池和session代码如下:package com.bootMybatis.config;import com.zax

2020-12-13 11:52:01 28156 2

原创 实用MySQL优化思路

最近在开发过程中优化了不少SQL,在此记录一下我的优化思路,希望帮助到有缘人,若有大佬请多多 指教哈!一、第一步:通过EXPLAIN查看SQL执行计划,分析是否全表扫描,若全表扫描则通过添加单列索引或者联合索引去优化,避免全表扫描;先建如下表并建立索引:我们通过一下SQL查看执行计划EXPLAIN select * from product_info p where p.category_name = '电脑';执行计划如下: 结果字段含义:id sel...

2020-11-29 13:12:08 195

原创 阿里云centos服务器安装MySQL遇到的问题

问题一:开始安装了MySQL8的版本,后来卸载了安装5.7版本,安装成功后一直起不来,就出现了该问题:通过日志文件发现原来是InnoDB的问题。原mysql8.0版本高于5.7版本,高版本的InnoDB引擎,而低版本的数据库服务还是指向了这些数据,但是一些版本的数据格式不同导致的该问题。只要删除了/var/lib下面的MySQL文件夹即可。问题二:All matches were filtered out by modular filtering for argumen...

2020-11-14 21:11:00 716

原创 阿里云服务器centos操作(一)安装MySQL

1、检查服务器系统是否是最新状态,更新成最新状态 yum -y update以上为更新过程和更新结果;2、检查是否安装过MySQL(我新的服务器没有安装)rpm -qa | grep mysql3、下载MySQL安装包 rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm4、安装MySQLyum install -y mysql-server以...

2020-11-14 17:05:28 215

原创 记录一次MySQL优化过程遇到的坑

相信很多开发都优化SQL语句,最近我在优化SQL是遇到了一个坑,在这里和大家分享一下;通过页面抓取到耗时超过3秒的接口,找到对应的SQL,设置好相应参数,在测试环境通过Explain进行分析,查看执行计划,通过分析查看扫描是否走了索引,通过发现全都走了索引,在生产环境也都走了索引,想了很多办法找不到问题根源。最后请教了大佬分析,他从数据库表结构类型去分析,发现我们生产的表采用的是utf8mb4,而测试是utf8,原因是同事前两天在修改了部分表的字符集,导致了生产环境部分表采用了utf8mb4,部分采

2020-11-14 09:56:45 190

原创 牛客网算法题:反转链表

// public class ListNode {// int val;// ListNode next = null;// ListNode(int val) {// this.val = val;// }// }public class Solution { public ListNode ReverseList(ListNode head) { if(head==null) { ret..

2020-11-04 19:16:47 188

原创 牛客网算法题:字符串的排列

import java.util.*;public class Solution { public ArrayList<String> Permutation(String str) { ArrayList<String> res = new ArrayList<String>(); if(str.length() == 0) return res; char [] array = str.toCh.

2020-11-04 19:16:26 148

原创 牛客网算法题:判断链表中是否有环

/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */public class Solution { public boolean hasCycle(ListNode head) {.

2020-11-04 19:16:07 334

原创 Oracle的临时表和MySQL的临时表

最近在Oracle迁移MySQL过程中遇到了一些关于with as 语法的问题,但是在MySQL中是没有这样的语法的,因为我使用了临时表代替了;因此今天做了一些小总结,欢迎各位大佬指导。一、Oracle with as语法with tableName as (select ....)select ...它在查询之前预先就构造了一个临时表,以供使用;可以一次分析,多次使用;增加了SQL的易读性。二、MySQL临时表语法:DROP TABLE IF EXISTS DEMO_T..

2020-09-09 20:54:32 583

原创 使用ThreadPoolExecutor构建线程池,实现多线程

一、场景最近做工作的时候,我们需要将树结构的数据存入到Redis中,由于数据量比较大,在存入Redis的时候使用了多线程。二、四种方式创建线程池的方式我以前的文章总结过四种方式:https://blog.csdn.net/weixin_42228950/article/details/100583510三、为什么阿里不允许使用四种方式? public static ExecutorService newCachedThreadPool() { return new Th

2020-08-01 16:15:50 723

原创 List一边循环一边删除会如何?如何解决?

啊啊啊

2020-07-18 12:35:25 1162

原创 文件从数据库存入磁盘,并打包成zip文件

一、背景由于最近工作时候实现一个文件打包下载,文件数量比较多,自研架构支持不了一次直接从数据查询出导出的文件结果。因次通过分批次进行从数据库查出文件写入磁盘,再从磁盘中生成zip文件,返回给前端。二、数据库文件入磁盘 /** * 将数据库中的文件写入到磁盘中 * * @param bytes * @param filePath 文件临时文件夹 * @param fileName 文件名称 */ public void addFileToFolder(byte[

2020-05-31 14:26:29 808

原创 Redis的两种过期策略以及内存淘汰机制

https://www.cnblogs.com/wjh123/p/11254858.html

2020-05-23 14:20:49 292

原创 No space left on device 解决方法

今天上传文件的时候,NGINX报了异常,通过查看NGINX的日志发现报了No space left on device的错误,因为最近两天一直做上传文件的压测,导致生成了很多临时文件。解决方案:df -h ##查看磁盘空间情况 发现磁盘都已经满了,删除一下临时文件就可以解决。...

2020-05-15 12:17:26 2234

原创 nginx 限制请求方式

$request_length : 请求长度$request_method : 请求方式$status : HTTP响应代码 (1.3.2, 1.2.2)$nginx_version :NGINX版本$arg_name :请求中参数名server {...if ($request_method !~* GET|POST) { return 403; }或者if ($request_method !~ ^(GET|POST)$ )...

2020-05-09 11:04:07 3073

原创 nginx 系统错误统一重定向到错误页面

server{ #监听8081端口 listen 8081; #对应的域名,把baofeidyz.com改成你们自己的域名就可以了 server_name localhost;       proxy_intercept_errors on; error_page 404 /404.html; location = /404.html { # 404.html 所在.

2020-05-09 10:54:43 1775

原创 Jmeter入门之测试文件上传和下载接口

一、JMeter介绍JMeter是Apache组织开发的开源项目,设计之初是Web/HTTP测试,同时它在实现对各种接口的调用方面做的比较成熟,因此,常被用做接口功能测试和性能测试。它能够很好的支持各种常见接口,如HTTP(S)、WebService、JDBC、JAVA、FTP等,并以多种形式展现测试结果。二、JMeter安装和启动2.1、JMeter软件网盘提取链接:https:/...

2020-05-08 16:54:32 1858

原创 MySQL和Oracle数据库区别、高并发数据库优化

一、引擎比较(一)、MySQL引擎:支持ISAM、MYISAM、HEAP、INNODB和BERKLEY五种引擎类型,也可以通过MySQL+API自己做一个引擎。ISAM:适用于查询次数要远大于更新次数的数据库设计,执行读取操作的速度很快,而且不占用大量的内存和存储资源。ISAM存在两个缺点:不支持事务处理,也不能够容错,数据无法恢复。MyISAM:是MySQL的ISAM扩展格式和缺省的...

2020-04-23 10:15:20 1414

原创 springboot整合AOP记录用户操作

本次示例是使用springboot版本:2.2.6.RELEASE 数据库使用:Mysql ,通过aop记录用户访问记录。目录一、引入依赖二、创建controller模拟请求三、定义切面类,实现web层的日志切面四、测试结果一、引入依赖只需引入以下依赖即可,我看关系图可以看出,在data中含有aop的包。因此不需要另外再引入aop的依赖。 <...

2020-04-05 14:03:29 707 2

原创 多线程处理Excel导入数据入库

springboot整合mybatisPlus,模拟导入2.4万条数据。一、目录结构如下图二、依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa<...

2020-04-04 23:18:23 3205 5

原创 当引入POI依赖之后,XSSFWorkbook不可用原因

一、由于XSSFWorkbook存在于另外的包,需要引入以下两个依赖才可用<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version></depende...

2020-04-04 20:01:17 4117

原创 Oracle根据父类查出所有子类的函数--实现递归查询(树状结构)

语法:--向下递归遍历select * from tablename start with cond1connect by cond2where cond3;select * //用视图中选择要查的东西from Table //从哪个表中查start with id = 1 //以哪个ID为开始,即跟节点IDconnect by prior ...

2020-03-08 12:48:51 393

原创 Java数组转LIst方式

一、Arrays.asList()public class ListDemo { public static void main(String[] args) { String[] split = "abc,bcd,cde,def".split(","); List<String> list = Arrays.asList(split); //list.ad...

2020-03-08 12:05:20 598

原创 Oracle中number类型经过类型转换之后小数点前的0消失了

最近在处理一个类型转换时遇到了,如图问题:解决方案:select to_char(round(50/342),''fm9999999990.00') || 'KB' from dual;

2020-02-27 17:48:43 2397

原创 Oracle 登录切换用户、查看状态等

1、查看当前机器上是否安装了Oracle:tnsping orcl2、查看Oracle的状态:lsnrctl status3、启动Oracle:lsnrctl start4、停止Oracle:lsnrctl stop5、运行SQL:sqlplus6、登录用户:#操作系统认证conn /as sysdba #一般都是登上去启动/停止数据库...

2019-12-29 10:38:53 2665 1

原创 Oracle Clob类型和Blob类型之间的转换

目录一、背景二、Clob 和 Blob 的区别三、使用JDK的Base64编码四、使用Oracle自带的Base64编码一、背景最近在迁移数据时,遇到了将Clob类型转换成Blob的问题,历史数据中文件内容是使用Clob类型存储,而新表使用的Blob类型,这样就导致在迁移文件时需要将类型转换。二、Clob 和 Blob 的区别BLOB和CLOB都是大字段类型,...

2019-12-28 11:39:38 3347

原创 Oracle 给其他用户授权可以访问所有表的权限

一、语句将A用户的某张表的权限给B用户。GRANT SELECT ON A.tablename to B;二、批量操作1、将A用户的查询权限赋给B用户,将一下查询结果拿出来执行就可以将A用户下所有表的查询权限赋给B用户了。select 'GRANT SELECT ON A.'||table_name||' to B;'from user_tables;2、将A用户...

2019-12-25 10:31:39 13722

原创 Oracle 函数之 add_months(X,Y)

一、函数介绍用于计算在时间X之上的Y个月后或前的时间值(Y为正数表示之后,Y为负数时表示之前)二、用法实例1、两个月前的当前时间点:select add_months(sysdate,-2)from dual;2、两个月后当前时间点:select add_months(sysdate,2) from dual;...

2019-12-21 15:16:35 251

原创 @Valid 注解

一、注解功能@Valid 注解用于校验参数二、函数用法将@Valid放在参数对象之前,例如@RestController public class ConsumerController { // @Autowired // RestTemplate restTemplate; @RequestMapping(value = "/consumer",me...

2019-12-15 12:38:45 4344

原创 Oracle函数之use_hash

目录一、函数介绍二、比较一、函数介绍select /*+ use_hash(ici,ifc) */ ici.user_code, ifc.file_name from issue_ipo_cust_info ici left join issue_ipo_file_content ifc on ifc.id = ici.file_id;use_hash可以加...

2019-12-12 08:50:25 5799

原创 Spring Cloud学习之六 Ribbon 客户端负载均衡

目录一、什么是负载均衡?二、硬负载均衡和软负载均衡三、客户端负载均衡和服务端负载均衡区别四、RestTemplate五、源码分析六、负载均衡器七、负载均衡策略八、配置一、什么是负载均衡?负载均衡是对系统的高可用、解决网络压力和提升处处理能力的一种方式;我们常说的负载均衡都是指的服务器端负载均衡,其中分为硬负载均衡和如负载均衡。负载均衡模块会维护一个下挂...

2019-11-30 15:01:50 535

原创 SpringBoot 项目解决跨域问题

一、跨域问题过滤器修改只需要将response.setHeader("Access-Control-Allow-Origin","*"); 对应的值改为*号即可。import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servle...

2019-11-28 14:30:35 122

原创 Spring Cloud学习之五 Eureka详细分析

目录一、基础架构二、服务治理机制三、分析源码四、配置详细分析五、跨平台支持一、基础架构Eureka服务治理基础架构包含三个核心要素:服务注册中心:Eureka提供的服务端,提供服务注册和服务发现的功能。服务提供者:提供服务的应用,可以将自己提供的服务注册到eureka,以供其他服务区调用。服务消费者:消费者应用从注册中心获取服务列表,找到自己所需要调用的服...

2019-11-02 16:56:44 207

原创 HashMap、HashTable和ConcurrentHashMap区别分析

目录一、底层原理二、区别一、底层原理HashMap底层是由链表和数组组成,在链表长度超过8时,链表转换成红黑树。为什么Map桶中个数超过8才转为红黑树?TreeNodes占用空间是普通Nodes的两倍,为了空间和时间的权衡,为6时红黑树也比链表快,但转换过程消耗和空间消耗不划算;节点的分布频率会遵循泊松分布,链表长度达到8个元素的概率为0.00000006,几乎是不可能事件...

2019-10-24 08:28:39 362

高并发面试题.doc

自己整理的多线程和框架的知识,希望能够帮助更多的朋友

2019-07-01

空空如也

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

TA关注的人

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