自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql数据大小写不敏感问题分析

起因账号导入校验账号列表是否在authcenter存在,返回存在的数据。查询sqlsqlSELECT id, account from ac_account where account = 'Shao'; # 查询大写字符结果(返回小写字符)idaccount1519373shaoauthcenter返回的数据格式格式如下就是一个Map,key...

2021-04-27 15:33:00 371

原创 不用递归实现List转Tree

缘由:能不递归就不递归代码实现Demoimport com.alibaba.fastjson.JSON;import org.springframework.util.CollectionUtils;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.stre...

2021-04-01 11:21:00 145

原创 spring cloud stream 局部异常和全局异常混乱

缘由:保证消息不丢失(provider端)可能会因为mq不可用,或者某些情况,导致消息发送失败。在spring cloud stream中,监听{destination}.errors,可以捕获消息发送异常信息,伪代码如下/** * 接收局部错误 **/@ServiceActivator(inputChannel = "repeat-topic.errors")publ...

2021-01-31 22:35:00 436

原创 elasticsearch官方文档摸索

index创建索引PUT google映射mapping(注意 mapping不能修改)include_type_name,请求体中是否包含type,高版本中会移除typeElasticsearc 6.x以后不再支持mapping下多个type,并且 6.x 版本type默认都是 _doc,7.0以后版本将会删除typePUT /{index} 有type (deprec...

2020-12-18 10:12:00 144 1

原创 nginx报错upstream sent invalid chunked response while reading upstream

缘由:A项目用HttpURLConnection代理(B项目)内部接口的时候,返回值正常;由于要走负载,nginx代理了几个A项目,通过nginx访问的时候,页面显示ERR_EMPTY_RESPONSE;nginx报错upstream sent invalid chunked response while reading upstream.原因http协议版本不一致导致解决...

2020-11-28 15:07:00 1571

原创 LRU算法的实现

缘由:看到redis的缓存淘汰机制,便自己实现了一下代码实现(双向链表+HashMap)package com.jarjune.jdalao.framework.algorithm;import java.util.*;/** * LRU * @author jarjune * @version 1.0.1 * @date 2020/11/19 */publi...

2020-11-20 13:22:00 76

原创 linux命令小计

开端口查看防火墙状态service iptables status停止防火墙service iptables stop启动防火墙service iptables start重启防火墙service iptables restart永久关闭防火墙chkconfig iptables off永久关闭后重启chkconfig iptables on开端口vim /e...

2020-07-28 13:59:00 179

原创 【阅读笔记】深入java虚拟机-第三部分-虚拟机执行子系统

首先,我不是书内容的搬运工,以下内容全部为个人的真实例子!一个class片段cafe babe 0000 0033 0148 0a00 4800 bc0700bd 0a00 0200 bc08 0058 0b00 be00 bf0a00c0 00c1 0a00 c200 c30a 0048 00c4 0a00c500 c608 00c7 0a00 0c00 c807 00c...

2020-01-31 23:55:00 143

原创 spring-session-data-redis导致跨域session失效

环境前端:vue全家桶axios后端:springboot 2.1.9.RELEASEspring-boot-starter-data-redisspring-session-data-redis根据以往的经验来看,无非就以下几种情况设置跨域访问前端设置携带cookie axios.get('http://xxxx/', { // ...

2019-11-22 16:20:00 733 1

原创 ReentrantLock源码解读

ReentrantLock源码解读 在看此文章前,先要了解一下上一篇文章AbstractQueuedSynchronizer(AQS)。ReentrantLockReentrantLock锁的实现分为两种(公平锁、非公平锁),默认是非公平锁。ReentrantLock lock = new ReentrantLock();Sync(公平...

2019-06-12 18:06:00 109

原创 AbstractQueuedSynchronizer(AQS源码解读)

AbstractQueuedSynchronizer(AQS源码解读) AbstractQueuedSynchronizer继承自AbstractOwnableSynchronizer。双向链表head->A->B->C->Dtail->D->C->B->A参数及代码块 // 获取U...

2019-06-12 18:05:00 106

原创 Object中wait()、notify()、notifyAll()

Object中wait()、notify()、notifyAll() 解释必须在synchronized修饰的方法/代码块中使用。wait()将当前线程持有对象的锁交出(允许其他线程持有),并进入等待状态。notify()唤醒某一个正在等待的线程(由某一个正在等待的线程获取锁)。notifyAll()通知所有正在等待的线...

2019-05-28 17:22:00 122

原创 redis(单机模式)分布式锁的实现

redis(单机模式)分布式锁的实现 问题起源:后台刷新token的时候,会有高并发问题。即:A发起请求的时候,刷新token时,还未存入redis,此时B发起请求,问题就出现了。由于Redis采用的是基于内存的采用的是单进程单线程模型的 KV 数据库,所以本次用redis来解决这个问题。INCR key为键 key 储存的数字值加上...

2019-05-09 17:06:00 245

原创 redis(单机模式)分布式锁的实现【已废弃】

问题起源:后台刷新token的时候,会有高并发问题。即:A发起请求的时候,刷新token时,还未存入redis,此时B发起请求,问题就出现了。由于Redis采用的是基于内存的采用的是单进程单线程模型的 KV 数据库,所以本次用redis来解决这个问题。INCR key为键 key 储存的数字值加上一。如果键 key 不存在, 那么它的值会先被初始化为 0 , 然后再执行 ...

2019-05-09 17:06:00 55

原创 spring-cloud-demo

spring-cloud-demo spring-cloud-demogitee:github:案例1spring-cloud-eureka-server-demo【启动服务】spring-cloud-eureka-client-demo【启动服务】spring-cloud-eureka-consumer-demo【启动服务】...

2019-04-15 14:38:00 136

原创 系统字体大小导致rem布局变大

系统字体大小导致rem布局变大 缘由:内部测试都ok,交给客户看的时候,整天变大,本来7.5rem = 750px,实际上大了很多。各种情况排除后,发现是客户手机字体大小调整到了特大号解决办法getComputedStyle方法能够获取到计算后的样式、大小。最后优化完的代码如下。 (function (doc, win) ...

2019-03-16 11:37:00 1444

原创 【docker小记】docker打包nginx

【docker小记】docker打包nginx 缘由:AgentHub需要每个Agent打包一个前端页面的docker镜像采取的是用nginx作为服务器,环境是centos7制作镜像安装dockeryum -y install docker启动dockersystemctl start docker目录结构我是放在/home/j...

2018-12-25 14:18:00 698

原创 【vue-number-scroll】数字逐渐增加或者减少的滚动解决方案

【vue-number-scroll】数字逐渐增加或者减少的滚动解决方案 效果源码https://github.com/jarjune/vue-number-scroll安装 npm install --save vue-number-scroll引入 import vns from 'vue-number-scroll'...

2018-12-24 11:43:00 2907

原创 再战mysql 数据去重

再战mysql 数据去重 年初时,写过一篇去重的,在小表中还能用用,在大表中真的是效率低下,现在给了一次优化https://www.cnblogs.com/jarjune/p/8328013.html继上一篇文章方法三:DELIMITER //DROP PROCEDURE IF EXISTS delete_rows_2;CREA...

2018-11-13 12:48:00 181

原创 内联元素之间有空隙的解决方案

内联元素之间有空隙的解决方案 首先看三张图图片高度46px文字高度14px,已设置line-height: 1;父元素高度为auto,也就是图片中显示的64px, 按理来说,高度应该 是图片(46px) + 文字(14px) = 60px,那多出来的4px是哪来的?解决方法设置文本的行高,line-height: 1;...

2018-11-11 16:23:00 280

原创 【前端】表单自适应

【前端】表单自适应 写前端页面的时候难免遇到表单的样式自适应,文字+input,文字数量又不确定,表单还要自适应某个div的宽度<style> .col{ width: 48%; height: 34px; float: left; } .label{ float: left; line-height: 34...

2018-09-20 21:47:00 999

原创 Spring技术内幕:深入解析Spring架构与设计原理(第2版)【阅读笔记】

Spring技术内幕:深入解析Spring架构与设计原理(第2版)【阅读笔记】 用着spring当然得懂核心技术以及原理啦~~~话不多说,开干!不定期增加内容。本文源码来自于spring4.1.3spring 核心实现什么是IoC一个引用自https://www.zhihu.com/question/23277575的故事我开...

2018-08-27 14:10:00 216

原创 项目中意外遇到的竞态条件(@scheduled 执行两次)

项目中意外遇到的竞态条件(@scheduled 执行两次) 原因:一个java的爬虫,就是定时抓取信用中国上的部分内容,当时用的是spring的定时任务,某天意外发现,部分数据有重复先解决@scheduled 执行两次的问题,原来是因为tomcat先加载appBase之后又加载了docBase,导致定时任务加载了两次。解决方案<Ho...

2018-07-23 16:02:00 318

原创 mysql内外连接时,on跟where的区别

mysql内外连接时,on跟where的区别 写sql的时候经常遇到各种连接查询,left join、right join、inner join,做个笔记外连接(left join、right join)left join...on...and...where...and...on...and...是对右表中的数据进行筛选,返回的是左表...

2018-07-23 15:37:00 297

原创 InvalidKeyException: Illegal key size

InvalidKeyException: Illegal key size 缘由:调用第三方接口的时候经常会遇到加密解密的东西,就记录一下常见的异常解决方案:在http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html下载jce文件,替...

2018-07-12 17:20:00 86

原创 BeanUtils.copyProperties实现po,vo,dto之间的转换

BeanUtils.copyProperties实现po,vo,dto之间的转换 缘由:项目中各类bean对象转换,在老项目里看到一堆的从A类get出来,再set到B类...简直看的头大BeanUtils.copyProperties的作用把A类中与B类中相同的变量名称的值复制到B类。举个例子,将接收到的userDto转换成po ...

2018-06-26 15:12:00 2128

原创 java集合之HashMap源码解读

java集合之HashMap源码解读 源自:jdk1.8.0_121HashMap继承自AbstractMap,实现了Map、Cloneable、Serializable。HashMap内部是由数组、链表、红黑树实现的变量 // 默认大小 static final int DEFAULT_INITIAL_CAPACITY ...

2018-04-24 11:48:00 116

原创 【移动端】【font boosting】移动端开发,字体大小被调整,跟真实大小不一样

【移动端】【font boosting】移动端开发,字体大小被调整,跟真实大小不一样 问题缘由:做文章详情页的时候,文字多了一点字体就放大了,真的是奇了怪了。问题重现一段文字的时候两段文字的时候很明显,字体放大了很多。疑点meta标签缩放的问题最近正好遇到处理retain屏1px的问题,然后采用的是自动修改meta标签。/...

2018-04-23 10:46:00 653

原创 【实用】【移动端】Retain屏1px解决方案

【实用】【移动端】Retain屏1px解决方案 新浪微博HTML5版微博的实现方式(rem + 小数px)<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">!function(e){var a,i=naviga...

2018-03-19 23:28:00 145

原创 java集合之LinkedList源码解读

java集合之LinkedList源码解读 源自:jdk1.8.0_121LinkedList继承自AbstractSequentialList,实现了List、Deque、Cloneable、Serializable。LinkedList内部是一个双向链表变量 transient int size = 0; // 链表...

2018-03-11 18:05:00 73

原创 URLDecoder: Illegal hex characters in escape (%) pattern - For input string

URLDecoder: Illegal hex characters in escape (%) pattern - For input string 原因:后台发布文章的时候,内容里面有%,导致后台URLDecoder.decode()转码的时候报错。看了java.net.URLDecoder的decode()的源码,原来是转码错误。贴出...

2018-01-24 18:35:00 4368

原创 java集合之ArrayList源码解读

java集合之ArrayList源码解读 源自:jdk1.8.0_121ArrayList继承自AbstractList,实现了List、RandomAccess、Cloneable、Serializable。ArrayList内部是通过数组及数组的扩容来实现变量 // 默认容量为10 private static fin...

2018-01-24 12:04:00 90

原创 mysql去重

mysql去重 原因:由于表是各地归集过来的,通过前置机数据交换,很多数据会重复。目的:删除数据库某张表的重复数据方法一(将查询出无重复的数据导入临时表,再将原表删除,再将临时表的数据导回原表) 适用于无主键,所有字段完全匹配,数据量小的情况:DELIMITER //CREATE PROCEDURE delete_rows(IN tab...

2018-01-22 11:07:00 92

原创 记一次java heap space的解决办法

记一次java heap space的解决办法 java.lang.OutOfMemoryError: java heap space问题缘由:后台上传excel导入到数据库,数据量太大,导致报错。解决方案:用jdk自带的性能分析器(jconsole)查看了一下,当excel开始导入的时候,发现堆空间直接爆掉。 增加堆空间,在cata...

2018-01-08 15:58:00 2372

原创 记一次sql优化——left join不走索引问题

记一次sql优化——left join不走索引问题 sql一执行就卡住,然后就...杀进程了看了一下表的大小第一反应就是加索引,然后explain看了一下走什么索引了,结果很尴尬,三个表,只走了一个索引...一群人在那纠结为毛走不了索引。无意间发现有个表的字符编码是gbk..另外两个都是utf8..网上查了一番,才发现当表的编码不一致的时...

2017-11-28 23:03:00 4054

原创 js黑魔法

js黑魔法 清空一个数组一直以来,清空一个数组都是var i = [1,2,3]; i = [];,习惯成自然,被自己坑了。举个例子var i = [1,2,3];var obj = {val: i};var i = []; // 当i = []时,i的地址就被改变了,所以obj.val一直是原来那个数组。console.log(o...

2017-11-28 23:01:00 156

原创 css坑了我一下下之line-height

css坑了我一下下之line-height 文字上下有间隙该怎么解决一次很搞笑的真实经历。我:文字上下有间隙该怎么解决?大佬A:什么意思?大佬B:字体的原因吧。大佬B:MD 谁看那么细。我:跟别的图片对不齐。真·大佬:这个我知道。真·大佬:妈的,这个跟浏览器有关系。真·大佬:chrome就是这个屌样。真·大佬:你要搜一个文件,...

2017-11-28 23:01:00 183

原创 target-densitydpi=device-dpi会使其他ui插件布局变小

target-densitydpi=device-dpi会使其他ui插件布局变小 target-densitydpi=device-dpi会使其他ui插件布局变小东哥说:不用rem了,把meta改成这样<meta name="viewport" content="width=720, user-scalable=no, target-de...

2017-11-28 22:59:00 1841

空空如也

空空如也

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

TA关注的人

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