自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

https://gitee.com/hello-piper/PiperChat

https://gitee.com/hello-piper/PiperChat

  • 博客(212)
  • 资源 (7)
  • 收藏
  • 关注

原创 简单的Charles抓包教程

点击add,host里不写东西,在port里填写443,这个数字不能错。一般我们在抓取手机端内容时需要将Proxy菜单栏下的Windows Proxy取消勾选,禁止charles抓取本机上的请求信息。打开浏览器,请求地址:chls.pro/ssl,下载证书命名,去CA证书目录信任此证书。注:首先要确认浏览器有访问物理存储的权限,下载时会弹出提示框,点击确认按钮。注:开启电脑端抓包后,会为电脑添加局域网代理,会导致正常上网时无法浏览。同时有些手机对于证书直接下载是不受信的,需要从已下载中安装证书。

2024-03-17 14:44:29 370

原创 Mysql并发插入死锁问题

比如有1和5两条记录,两个事务分别插入2和3,插入之前都会使用插入意向锁锁定1-5的间隙,但是因为是不同的行,所以不需要互相等待。间隙锁:间隙锁是在索引记录之间的间隙上的锁,或者是第一条记录之前或最后一条记录后的间隙上的锁。for update的用处,第一是对记录加X锁,第二是可以当前读,也就是在可重复读隔离级别下,可以读到其他事务已提交的数据。for update 不存在数据的时候,加的锁是间隙锁吗?结果:同一个事务的间隙锁和插入意向锁不会互斥,两个事务之间的间隙锁和插入意向锁会互斥。

2023-05-16 19:25:38 1915 1

原创 公司分布式锁加锁错误原因

公司自研分布式锁问题,setIfabsent问题,LuttuceConfig配置问题,Netty的IdleStateHandler配置

2023-04-12 10:41:45 688

原创 Java异步线程池中 复制参数 MDC

最近在查询日志的时候,发现异步线程池里面执行的任务 没有打印公司自定义的 日志id排查发现日志id是存在MDC中,创建新的线程的时候并未传递给子线程查询文章发现spring可以使用线程装饰器解决,如下

2022-12-04 20:07:46 1857

原创 git 常用操作

【代码】git 常用操作。

2022-09-09 15:46:33 113

原创 阿里云使用redisson RRateLimiter 出现Lua脚本错误的解决

默认阿里云Redis会对lua脚本做一定限制,目的是为了保证脚本里面的所有操作都在相同slot进行,如果用户能够在代码确保所有操作都在相同slot而又想打破Redis集群的lua限制的话可以通过控制台修改script_check_enable参数为0,则后端不会对脚本进行校验。

2022-08-23 16:22:22 1923

原创 mysql数据库for循环 存储过程

mysql存储过程 for循环生成数据

2022-07-19 13:49:05 3890

原创 记公司项目对Spring的 ClassPathBeanDefinitionScanner 的运用

前言公司有一个老项目, 使用MongoDb数据库, 没有现在Spring Boot的 mongodb template 可以用. 但是之前员工对mongo链接做了封装, 我们只需要继承一个公共类,标注上实体类,就可以用, 类似 monggodb template的方式, 我非常感兴趣, 所以在这里记录下来我的研究,与君共勉.事情是这样的我们想使用monggo 直接这样定义一下Dao类, 项目中可以直接引用public class UserDao extends BaseDataLayer<Us

2022-02-16 17:36:31 734 2

原创 使用Spring的AbstractRoutingDataSource实现动态数据源

前言笔者公司目前数据库进行了分库操作,分成了几个库,存放用户相关信息的user库,存放资产信息的asset库,存放直播相关信息的live库。在平时开发过程中涉及多库操作的地方,需要通过rpc调用对应服务。这样的开发模型大体上没问题,因为既然拆分库了,应用跟随数据库进行拆分,也能防止以后开发代码混乱。但是这样缺少了灵活性,所以我这里为我们项目增添多数据源功能。调研调研了两种spring+mybatis数据源方案。1 多份配置在项目中,为每个库分别设置一套数据源配置。DataSource,SqlSe

2021-11-21 18:01:51 1520

原创 JMeter压力测试工具

1 简介JMeter是开源软件Apache基金会下的一个性能测试工具,用来测试部署在服务器端的应用程序的性能。2 下载安装和启动JMeter可以在JMeter的官方网站下载(https://jmeter.apache.org/)官网找到Download 下载zip压缩包后, 解压到本地就行进入/bin目录, 运行 ApacheJMeter.jar 文件就启动了 但是首先确保 你安装了JDK环境3 简单的设置恭喜你现在你已经启动了JmeterJmeter可以设置为中文, 按照如下顺序进行配置

2021-11-19 18:01:34 9891 3

原创 mongo 删除重复 文档

db.table.aggregate([ { -- 根据重复字段分组 $group: { _id: {'name': '$name','age': '$age'}, -- 计数 count: {$sum: 1}, -- 将id放到ids数组 ids: {$addToSet: '$_id'}} }, { -- 查询数据条数大于1的 $match: {count: {$gt

2020-07-13 13:11:17 339

原创 mongodb 修改主键类型

公司不知道出于什么原因使用Mongodb存储业务数据,而且是比较老得版本,造成了后面一系列问题。没有事务导致后台繁忙时数据不一致。主键默认ObjectId导致查询失败,需要手动设置,并且为字符串,防止自动转换为ObjectId。自带一套查询语句,导致有学习成本。今天遇到的问题就是因为主键为ObjectId导致后台查询出错。原因为写代码忘记设置_id,mongo自动插入id并且是ObjectId。既然线上已经出错了,我就要解决了。查询mongodb语法,得到如下语句。db.table.find(

2020-07-13 13:05:39 1978

原创 手写Redis分布式锁

通过调研Redis、Lua和Redisson框架,整理思路自写Redis分布式锁,保证不会死锁,并实现了Watchdog功能

2020-06-30 13:07:24 725 3

原创 算法 - 二叉搜索树的第k个结点

题目给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。解题思路使用栈存储数据,循环比较数据和栈里面数据大小,大于就出栈,一直找到当前数据应该呆的位置,然后再将出栈的数据放回来。编码 private static TreeNode KthNode(TreeNode pRoot, int k) { if (k == 0) { return null; }

2020-06-11 13:53:01 291

原创 算法 - 序列化二叉树

题目请实现两个函数,分别用来序列化和反序列化二叉树二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。二叉树的反序列化是指:根据某种遍历顺序得到的序列化字符串结果str,重构二叉树。例如,我们可以把一个只有根节点为1的二叉树序列化为"1,",然后通过自己的函

2020-06-10 19:04:32 500

原创 InteliJ IDEA社区版 两款插件变身旗舰版

今年Idea对盗版软件打击力度加大,朋友们会发现,旗舰版自己激活使用,过几天就会失效,需要重新激活,有的小伙伴就会选择去淘宝花钱买个教育邮箱注册,这个方法我使用过,过了两三个月就不能用了,着实让人头疼。如何解决呢?我想到了Idea社区版本,下载一个使用,将我的Spring boot项目导入,启动下试试,不错所料,报错了。我这里不绕弯子了,想使用社区版Idea。安装Spring Assistant插件...

2020-05-19 10:20:03 9649 12

原创 intelliJ idea自定义代码折叠

在intelliJ idea中不仅可以对类、方法等结构的代码进行折叠(ctrl±)还可以自定义折叠代码。intelliJ支持两种风格的自定义代码折叠,如下:visual studio style// <editor-fold desc="Description"> Your code goes here... // </editor-fold> 快捷...

2020-05-07 13:52:46 622 2

原创 brew的使用

brew tap ringohub/redis-clibrew install redis-cli

2020-03-31 09:35:28 894

原创 spring 特定环境下不启用配置

今天老曹找我说他们公司因为在正式服启用了Swagger,导致接口暴露,被对手公司爬了数据。我说这有何难,我正好有两个方法可以帮到你!一 配置文件自定义启用我们项目一般会分环境切分为三个配置文件:application-dev.properties、application-test.properties 和 application-prod.properties三个配置文件加入配置:swa...

2020-03-06 16:29:28 481

原创 simplejavamail : Batch module not found, make sure it is on the classpath

org.simplejavamail.internal.modules.ModuleLoaderException: Batch module not found, make sure it is on the classpath (https://github.com/bbottema/simple-java-mail/tree/develop/modules/batch-module)今天使...

2020-03-03 16:27:59 1150

原创 算法-把数组排成最小的数

占位符

2020-02-25 21:52:14 194

原创 IntelliJIdea配置文件位置

window 配置文件位置C:\Users\XXX.IntelliJIdeaxxx\configfileTemplates 是自定义的文件模版templates 是自定义的代码模版plugins是插件文件夹同步的时候同步这几个就够了。keymaps是自定义的快捷键,如果有很多自定义快捷键的话,可以同步此文件夹mac配置文件地址位置~/Library/Preferences/Inte......

2020-01-16 18:06:00 5081

原创 lombok插件生成set方法问题

lombok插件很好用,但是我今天就遇到个有意思的bug,代码如下spring mvc这样接受一个这样的dtovoid saveCardSendConf(@RequestBody CardSendConfDto cardSendConfDto);dto如下@Datapublic class CardSendConfDto implements Serializable { pr...

2020-01-15 17:05:04 1086 1

原创 资料网站

https://visualgo.net/zh

2020-01-14 10:12:14 291

原创 Spirng I18n 国际化

最近公司做了个购票项目,业务扩展到了泰国,所以网站要支持泰语、英语和中文,因此有了下文。配置文件准备:根目录或者i18n目录放置需要的翻译,每个配置文件对应不同的翻译messages是默认展示的翻译 我这里为英文messages_th_TH:email_format_error=รูปแบบอีเมลไม่ถูกต้องmessages_en_US:email_format_err...

2020-01-10 23:52:55 219

原创 将UTC时间转换为本地时间

Instant instant = Instant.now();ZonedDateTime zonedDateTime = instant.atZone(ZoneId.of("GMT+08:00"));System.out.println(zonedDateTime.getHour());System.out.println(zonedDateTime.getMinute());Zon...

2020-01-10 18:42:39 601

原创 mysql8 WITH AS(公用表表达式)

公用表表达式(CTE)是一个命名的临时结果集,它存在于单个语句的范围内,以后可以在该语句中引用,可能多次。以下讨论描述了如何编写使用CTE的语句。常用表表达式要指定公用表表达式,请使用 WITH具有一个或多个逗号分隔子句的子句。每个子句都提供一个子查询,该子查询产生一个结果集,并将一个名称与该子查询相关联。下面的示例定义名为的CTE cte1和cte2中 WITH子句,并且是指在它们的顶层SE...

2020-01-07 10:29:50 3800

原创 Spring boot 文件上传大小限制

spring:servlet:# 文件上传大小限制multipart:max-file-size: 2MBmax-request-size: 2MB

2020-01-02 17:38:54 232

原创 java.lang.NoClassDefFoundError: org/apache/commons/fileupload/disk/DiskFileItemFactory

commons-fileupload commons-fileupload 1.2.2 commons-io commons-io 1.3.2

2020-01-02 17:16:51 2504 3

原创 连续子数组的最大和

问题HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和...

2019-12-30 17:06:00 105

原创 @Scheduled(cron = "* * * * * *")

1 cron表达式格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}“”字符代表所有可能的值。“”在{月份}里表示每个月的含义。“/”字符用来指定数值的增量。在{分钟} 里的“0/15”表示从第0分钟开始,每15分钟。在{分钟}里的“3/20”表示从第3分钟开始,每20分钟(它和“3,23,43”)的含义一样。“L” 字符仅被用于{日期}和{星期},它...

2019-12-30 11:08:47 2728 2

原创 BigDecimal加减乘除计算

java.math.BigDecimal 不可变的、任意精度的有符号十进制数。在银行、帐户、计费等领域,BigDecimal提供了精确的数值计算。Bigdecimal进行加减乘除的类方法。加法:add()函数减法:subtract()函数乘法:multiply()函数除法:divide()函数绝对值:abs()函数...

2019-12-30 10:29:24 210

原创 mongo 分组 aggregation

公司私用mongodb做后台存储,可能是图它的无结构,速度快,不过在我实际使用中,速度和mysql相比确实会快点不过需要分组聚合等查询的时候稍显麻烦,相比mysql而言,最近要做这方面的操作,就调研了下。sql和mongo聚合查询关键字对应sql 关键字mongo aggregation关键字where$matchgroup by$grouphaving...

2019-12-26 14:28:41 518

原创 Redisson分布式锁原理

分布式锁产生的场景分布式锁在需要分布式同步的场景下使用,也就是在分布式系统下才能发挥作用,传统的单台系统使用java提供的锁,分布式场景多实例项目需要多个项目之间同步。都有哪些实现方式1 数据库锁:通过在数据库中创建一条记录,根据创建结果来判断是否上锁成功。实现简单但是数据库效率低。2 redis实现:通过redis缓存中间件实现,比较繁琐,效率高。2 zookeeper实现:通过临时节...

2019-12-22 23:21:07 273

原创 Virtual server server already has a web module live-mix-1.0.2-t230 loaded at / therefore web module

公司用了一个很老的web容器,现在都没人知道我也是第一次用,使用报错,写这个错误答案应该也没有人用,抱着也许有同病相怜的人呢,就写下吧,凑个数。这个错,要把项目domain空间的application清理掉,因为已经有了上个版本的空间了,所以没法创建了,如下。我的项目叫mix,空间在/Users/admin/software/glassfish4/glassfish/domains/dom...

2019-12-20 10:17:21 423 2

原创 二进制中 1 的个数

/** * 本来想着java自带的有方法,尝试了下,并不能实现 * 只能自己想法了 * 既然是 1 的个数,那就要从二进制运算符入手 * 首先判断最后一位是1、0 * 然后将数据右移一位 * 以此循环 * 值得一提的是 >>> 无符号右移 >> 有符号右移 */private static int NumberOf1(int n) { int...

2019-12-19 14:10:06 97

原创 替换空格

使用stringbuffer自带函数解 字符串替换int index = 0;while (index < str.length()) { index = str.indexOf(" ", index); if (index != -1) { str.replace(index, ++index, "%20"); } else {...

2019-12-19 13:57:33 91

原创 从尾到头打印链表

问题牛客上面有这样一个题,输入如下链表public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}// 完成下面方法ArrayList<Integer> printListFromTailToHead(L...

2019-12-19 13:55:39 96

原创 包含min函数的栈(不算巧妙 从数据结构下手)

我刚开始是想使用LinkedList实现,牛客不让用java的集合,就没用了想着不让用LinkedList,我就只能自定义一个List了本着不麻烦够用就行的原则,写了个单链表。算法上没有有点 单纯的判断。后来看题解,牛客可以用Stack集合,我晕,给个提示啊,能用什么不能用什么,让我大费周折!private static class MyStack { private No...

2019-12-19 13:24:40 158

原创 docker安装mysql

装软件这样的事情,当然是要去官网最好,然而我就遇到个不靠谱的事情。docker安装mysql,我照样去官网找镜像,然后自然的去看官网的启动教程,在下载过后镜像,输入命令启动后$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag这个时候使用连接工具连接如下错误怀疑没启动 查看正常...

2019-12-14 22:55:09 112

统一管理系统

公司有eureka管理页面、spring admin管理页面、kafka管理页面、日志查询页面和文件系统查询页面,现在要将这些页面放到一个统一的网页中管理,通过标签分别跳转到不同的页面,省去了分别点开的麻烦 这些单个的系统外网访问不到,但是我这个系统(manage)能够被外网访问,在后台做一个请求转发的功能: manage前台发送请求给后台 manage后台拿到传过来的参数和请求地址,使用httpclient请求内网eureka等 将返回的数据返回到前台

2018-08-04

mariadb-10.3.7.tar.gz

mariadb是由mysql创始人离开oracle之后开发的数据库,版本发布速度已经赶上mysql,现在centos7预装mariadb

2018-06-21

mongodb备份数据库

mongodb备份数据库,达到4.3M的数据,也就是四千三百万条数据,不大不小,正好可以下载下来测试mongo用

2018-06-21

wls1213_dev_update3.zip

wls1213_dev_update3.zip weblogic安装包 大家也可以去这里下载wls1213_dev_update3.zip wls1213_dev_update3.zip wls1213_dev_update3.zip

2018-03-10

MySQL-server-5.1.72-1.glibc23.i386.rpm

MySQL-server-5.1.72-1.glibc23.i386.rpmMySQL-server-5.1.72-1.glibc23.i386.rpmMySQL-server-5.1.72-1.glibc23.i386.rpm

2017-09-04

apache-tomcat-7.0.79.tar.gz

在32位的redhat linux系统上试过了能用,各位小伙伴可以放心下载使用apache-tomcat-7.0.79.tar.gzapache-tomcat-7.0.79.tar.gz

2017-09-04

MySQL-client-5.1.72-1.glibc23.i386.rpm

MySQL-client-5.1.72-1.glibc23.i386.rpm MySQL-client-5.1.72-1.glibc23.i386.rpm MySQL-client-5.1.72-1.glibc23.i386.rpm

2009-12-18

空空如也

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

TA关注的人

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