自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (7)
  • 收藏
  • 关注

原创 记日志打印引起接口慢问题排查

其他系统调用本接口,其他系统反馈接口慢,查看接口勇士0.07s,但仔细观察日志发现接口确实慢了用时5.978s;

2024-03-17 21:14:44 308 1

原创 mysql分页问题引发的思考

count(未加索引列):它会全表扫描获取所有数据,解析中未加索引列,然后判断是否为NULL,如果不是NULL,则行数+1。count(*) ≈ count(1) > count(id) > count(普通索引列) > count(未加索引列)count(普通索引列):它需要从所有行的数据中解析出普通索引列,然后判断是否为NULL,如果不是NULL,则行数+1。count(id):id代表主键,它需要从所有行的数据中解析出id字段,其中id肯定都不为NULL,行数加1。一个查总条数,一个查分页数据。

2022-12-08 15:06:22 629 1

原创 linux脚本安装nginx

# 说明:使用以下命令赋予执行权限,后 ./installNginx.sh# chmod +x installNginx.sh# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++# +++++++++++++++++++++++++++++++++++++++【准备环境】++++++++++++++++++++++++++++++++++++++++++# +.

2021-09-25 21:31:25 212

原创 windows快速安装jdk脚本

echo %cd%echo %path%setx /m JAVA_HOME "%cd%"setx /m classpath "%cd%\lib\dt.jar;%cd%\lib\tools.jar"setx /m path "%path%;%cd%\bin;%cd%\jre\bin"pause将此脚本保存为 .bat文件,放在jdk的bin同级目录,双击即可完成jdk环境变量配置...

2021-09-25 21:29:15 691 1

原创 springAop处理异常参数问题

Aop切面处理异常参数

2021-07-07 21:50:54 324

原创 不创建第三个变量的情况下交换两个变量的值

int a = 500, b = 600;// 方法一a = a + b;b = a - b;a = a - b;System.out.println(a);System.out.println(b);// 方法二a = a ^ b;b = a ^ b;a = a ^ b;System.out.println(a);System.out.println(b);

2021-06-17 16:06:27 124

原创 神奇的代码

java中让 a==1 && a==2为truepublic static void main(String[] args) throws NoSuchFieldException, IllegalAccessException { Class cache = Integer.class.getDeclaredClasses()[0]; Field c = cache.getDeclaredField("cache"); c.setAccessible(t.

2021-06-04 22:09:52 184

原创 逗号隔开字符串与list互转

String str = "1,2,3,4,55,66,77,12"; List<Integer> integerList = Arrays.asList(str.split(",")).stream().map(Integer::valueOf).collect(Collectors.toList()); String strList = integerList.stream().map(String::valueOf).collect(Co...

2021-06-04 22:06:06 275

原创 springboot中连接redis哨兵模式主从切换坑

springboot+redis(哨兵模式)主从切换之后,项目中redis连接池中没有切换。复现方式:redis强切方式,停master启动master这种方式没复现问题生产配置及报错信息,从中可以看到redis线程池使用的是lettuce,而不是jedis,并且连接超时时间600ms过短(这个默认值是2s),lettuce连接池不稳定会导致主从切换失败。修改方案: 将lettuce包排除掉,使用jedis的连接池 将超时时长设长一...

2021-04-20 22:09:12 2177 1

原创 java创建对象的方式

通过 new 关键字 这是最常用的一种方式,通过 new 关键字调用类的有参或无参构造方法来创建对象。比如 User user1 = new User(); 通过 Class 类的 newInstance() 方法 这种默认是调用类的无参构造方法创建对象。比如 User user2 = (User)Class.forName("com.example.demo.bussniss.domain.User").newInstance(); 通过 Constructor 类的 ne

2021-01-08 17:19:06 65

原创 异步线程池优化查询

controller方法中存在。1.查询数据库获取结果AList2.查询数据库获取结果BList3.AList与BList结果进行处理此时可以使用线程池异步处理1和2.配置文件:excutor: # 线程池配置 corePoolSize: 4 # 核心线程数 maxPoolSize: 20 # 最大线程数 queueCapacity: 20 # 最大等待队列 keepAliveSeconds: 20 # 最大存活时长 allowCoreThreadTimeOut

2020-11-14 14:52:59 312

原创 mysql:乐观锁vs悲观锁

mysql:乐观锁vs悲观锁悲观锁:前提是,认为一定会有并发抢占资源,强行独占资源,在整个数据处理过程中,将数据处于锁定状态。乐观锁:前提是,认为不一定发生并发抢占资源,只有在提交操作的时候检查是否违反数据完整性。只能防止脏读后数据的提交,不能解决脏读。【@@乐观锁@@】1.版本号||时间戳形式update su_goods set nums = nums - 1,version = version + 1 WHERE version = #version# and id = #id#upd

2020-11-03 12:55:44 99

转载 单点登录实现

前言 实现方式一:父域 Cookie 实现方式二:认证中心 实现方式三:LocalStorage 跨域 补充:域名分级前言在 B/S 系统中,登录功能通常都是基于 Cookie 来实现的。当用户登录成功后,一般会将登录状态记录到 Session 中,或者是给用户签发一个 Token,无论哪一种方式,都需要在客户端保存一些信息(Session ID 或 Token ),并要求客户端在之后的每次请求中携带它们。在这样的场景下,使用 Cookie 无疑是最方便的,因此我们一般都会将 Sessi.

2020-10-19 13:07:25 85

原创 下拉选项特别多,增减检索option方法

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>下拉选项搜索</title> <script type="text/javascript" src="./jquery-2.1.3.min.js"></script></head><body> <select id="slt"&gt.

2020-09-17 19:22:01 195

原创 计算机基础之,源码、反码、补码、&、|、^、左移位、右移位、无符右移运算

【原码、反码、补码】原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值正数的反码是其本身;负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.正数的补码就是其本身;负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)例如:11 00000000 00000000 00000000 00001011(源码)00000000 00000000 00000000 00001011(反码)00000000 00000000 0.

2020-09-14 20:47:43 340

原创 分布式的CAP定理

CAP定理又称布鲁尔定理,是计算机科学家 Eric brewer 提出的,是分布式系统领域的一个定理。若想设计一个分布式架构的系统,掌握这项定理不可或缺。C是Consistency,也就是一致性,在CAP中的是强一致性。A是Availability ,可用性。P是Partition tolerance,分区容错性。在分布式系统中三者不可兼得,只能选两个。这就是CAP定理。例如你保证了一致性和分区容错性就无法保证可用性。Consistency这里的一致性是强一致性,强一致性的意思就是例如节点A

2020-09-09 18:41:30 371

原创 java8之lambda表达式高级应用

package com.fhc.modules.api.utils;import java.util.Arrays;import java.util.Comparator;import java.util.IntSummaryStatistics;import java.util.List;import java.util.function.Predicate;import java.util.stream.Collectors;/*** lambda Test*/.

2020-09-03 21:14:57 809

原创 常用的maven命令

maven 命令的格式为 mvn [plugin-name]:[goal-name],可以接受的参数如下。-D 指定参数,如 -Dmaven.test.skip=true 跳过单元测试;-P 指定 Profile 配置,可以用于区分环境;-e 显示maven运行出错的信息;-o 离线执行命令,即不去远程仓库更新包;-X 显示maven允许的debug信息;-U 强制去远程更新snapshot的插件或依赖,默认每天只更新一次。常用maven命令创建maven项目:mvn ar

2020-08-29 17:36:48 89

原创 js在html中各初始化函数执行顺序

参见代码:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><script src="./jquery-2.1.3.min.js"></script><script type="text/javascript">console.log(11111)wi

2020-08-29 17:21:32 1739

原创 java识别图片中的文字

向pom文件中新增依赖:<!-- 识别图片解析 --> <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>4.1.0</version> </dependency&

2020-08-29 16:29:40 1286

转载 Redis性能指标监控

监控指标•性能指标:Performance•内存指标: Memory•基本活动指标:Basic activity•持久性指标: Persistence•错误指标:Error性能指标:PerformanceName Description latency Redis响应一个请求的时间 instantaneous_ops_per_sec 平均每秒处理请求总数 hi rate(calculated) 缓存命中率(计算出来的 内存指标: MemoryName

2020-08-26 22:54:02 111

转载 为什么数据库中不建议使用用 Null

港真,Null 貌似在哪里都是个头疼的问题,比如 Java 里让人头疼的 NullPointerException,为了避免猝不及防的空指针异常,千百年来程序猿们不得不在代码里小心翼翼的各种 if 判断,麻烦而又臃肿,为此 java8 引入了 Optional 来避免这一问题。下面咱们要聊的是 MySQL 里的 null,在大量的 MySQL 优化文章和书籍里都提到了字段尽可能用NOT NULL,而不是NULL,除非特殊情况。但却都只给结论不说明原因,犹如鸡汤不给勺子一样,让不少初学者对这个结论半信半疑

2020-08-18 18:24:10 1597 1

原创 内存溢出与内存泄漏区别

内存泄漏:百度百科:内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

2020-08-18 12:23:58 98

原创 windows关闭所有java进程

将一下代码保存至文件,文件后缀设置成bat双击即可taskkill /F /IM java.exe

2020-08-12 18:23:05 2138

原创 强软弱虚四种引用

引用与对象在 JDK1.2 之前,Java中的定义很传统:如果 reference 类型的数据中存储的数值代表的是另外一块内存的起始地址,就称为这块内存代表着一个引用。Java 中的垃圾回收机制在判断是否回收某个对象的时候,都需要依据“引用”这个概念。在不同垃圾回收算法中,对引用的判断方式有所不同:引用计数法:为每个对象添加一个引用计数器,每当有一个引用指向它时,计数器就加1,当引用失效时,计数器就减1,当计数器为0时,则认为该对象可以被回收(目前在Java中已经弃用这种方式了)。可

2020-08-11 22:55:39 344

原创 深拷贝与浅拷贝

java深拷贝与浅拷贝详解开发过程中,有时会遇到把现有的一个对象的所有成员属性拷贝给另一个对象的需求。比如说对象 A 和对象 B,二者都是 ClassC 的对象,具有成员变量 a 和 b,现在对对象 A 进行拷贝赋值给 B,也就是 B.a = A.a; B.b = A.b;这时再去改变 B 的属性 a 或者 b 时,可能会遇到问题:假设 a 是基础数据类型,b 是引用类型。当改变 B.a 的值时,没有问题;当改变 B.b 的值时,同时也会改变 A.b 的值,因为其实上面的例子中只是把 A.b

2020-07-30 09:17:43 97

原创 java之RequestContextHolder获取HttpServletRequest、HttpServletResponse

/** * 原来写法 * * @param request * @param response */ @GetMapping(value = "/download") public void download(HttpServletRequest request, HttpServletResponse response) { // service层需要操作HttpServlet的时候还得需要在controll...

2020-07-28 20:15:32 703

原创 java-控制反转(IOC)

控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。...

2020-07-27 19:10:18 585

原创 汉字转拼音工具类

package com.example.demo.utils;import net.sourceforge.pinyin4j.PinyinHelper;/** * @author :suyanlong * @date :Created in 2020/6/30 14:18 * @description:ceshi * @version: 1.0 */public class PinYinUtils { /** * 获取汉字首字母的方法。如: 张三 --> ZS.

2020-07-22 15:28:53 281

原创 实用js技巧

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Test</title></head><body><input type="text"> <script> // 1.生成一周时间 console.log(getWeekTime()) .

2020-07-21 20:16:34 100

原创 Explain详解与索引最佳实践

Explain工具介绍使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中Explain分析示例参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/explain-output.html1 示例表:2 D

2020-07-19 22:22:11 387

原创 java监听文件或文件将爱有没有变化

1.nio监听文件夹变化package com.suyl.candy.test;import java.nio.file.*;public class Test_ResourceListener { public static void main(String[] args) { try { //创建一个监听服务 WatchService service = FileSystems.getDefault().newWat

2020-07-17 11:14:24 169

原创 java压缩与解压缩

package com.example.demo.utils;import java.io.*;import java.util.zip.ZipEntry;import java.util.zip.ZipInputStream;import java.util.zip.ZipOutputStream;/** * @author :sohikoryuu * @date :Created in 2020/7/8 10:22 * @description:文件压缩与解压缩 * @versi.

2020-07-10 11:47:25 434

原创 java中各种路径获取方式

package com.example.demo.utils;import javax.servlet.http.HttpServletRequest;import java.io.File;import java.io.IOException;/** * @author :suyanlong * @date :Created in 2020/7/7 18:19 * @description:获取项目路径工具类 * @version: 1.0 */public class GetP.

2020-07-07 19:54:46 191

原创 idea快捷键(window中)

Ctrl快捷键 介绍Ctrl + F 在当前文件进行文本查找 (必备)Ctrl + R 在当前文件进行文本替换 (必备)Ctrl + Z 撤销 (必备)Ctrl + Y 删除光标所在行 或 删除选中的行 (必备)Ctrl + X 剪切光标所在行 或 剪切选择内容Ctrl + C 复制光标所在行 或 复制选择内容Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 (必备)Ctrl + W 递进式选择代码块。可...

2020-07-07 14:04:11 657

转载 搞懂这 9 个步骤,DNS 访问原理就明明白白了

DNS的含义和结构众所周知,在互联网中是用IP来标识一台服务器的。IP地址虽然能够代表一台设备,但是由于记忆起来比较困难,所以将其替换成一个能够理解和识别的名字,这个名字我们称作为域名。例如:www.51cto.com 就是一个域名,在域名后面会定义一个IP地址用来指向网站服务器。那么问题来了,谁来做这个从域名到IP地址的对应呢?答案是通过DNS来实现。DNS 是域名系统(Domain Name System,缩写:DNS)是互联网的一项服务。它将域名和IP地址相互映射的一个分布式数据库,在数据库中

2020-07-06 20:42:18 174

原创 jar包瘦身

之前项目打jar包,双击maven-package..... 15.9MB==============================================================在pom.xml中加入一下配置,双击打包<build> <finalName>demos</finalName> <plugins> <plugin>

2020-07-06 20:18:20 624

原创 HttpClient远程调用发送post请求

package com.test.supnier.util;import com.alibaba.fastjson.JSONObject;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.HttpStatus;import org.apache.http.NameValuePair;import org.apache.http.client.entity.U.

2020-06-24 11:24:19 1049

原创 mysql统计查询今天、昨天、本周、本月、上一月 、今年数据利器

--今天select * from 表名 where to_days(时间字段名) = to_days(now());--昨天SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1--本周SELECT * FROM 表名 WHERE YEARWEEK( date_format( 时间字段名,'%Y-%m-%d' ) ) = YEARWEEK( now() ) ;--本月SELECT * FROM .

2020-06-23 22:32:16 1349

原创 springBoot中后台解决跨域

前后台联调过程中,前台使用ajax请求会显示跨域后台加入以下配置可解决跨域问题package com.suyl.candy.cros;import org.springframework.stereotype.Component;import javax.servlet.*;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import ja..

2020-06-19 10:37:58 278

微信和企业微信windows电脑中应用多开

微信和企业微信windows电脑中应用多开,微信和企业微信windows电脑中应用多开,微信和企业微信windows电脑中应用多开

2020-09-30

JVM垃圾回收机制.xmind

自己学习总结JVM垃圾回收机制的结构图,一起分享!!!

2020-03-31

fastdfs-srver.rar

fastdfs-server文件服务器,基于centos环境下,需要安装jdk和mysql、redis去支持并发量,安装包内有安装说明,欢迎使用!!!!!!!

2020-03-24

TortoiseSVN_1.9.5.27581_x64.rar

这是SVN客户端工具,windows版本,里边有语言包!下载直接解压使用即可使用!

2020-03-24

VisualSVN-Server-4.0.0-x64.msi

在windows系统中安装svn服务器环境安装包,欢迎下载!

2020-03-24

远程连接管理linux系统工具SSHSecureShellClient-3.2.9

管理linux的工具、具有命令窗口和可视化界面管理、方便实用是一款不错的软件。

2018-06-19

node-v8.9.3-linux-x86.tar.xz

linux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装nodelinux下安装node

2018-05-13

空空如也

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

TA关注的人

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