自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Reid的专栏

日常工作和学习记录

  • 博客(396)
  • 资源 (6)
  • 收藏
  • 关注

原创 发送邮件附件名tcmime.*.bin

默认java关于邮箱的参数splitlongparameters为true, 即太长会处理为.binstatic { System.setProperty("mail.mime.splitlongparameters", "false"); }中文附件名乱码MimeUtility.encodeText(fileName, "UTF-8", "B");

2022-05-30 10:26:56 933

原创 使用hutool获取所有下级节点

@Slf4jpublic class MainTest { public static void main(String[] args) throws IOException { List<Tree<Long>> list = new ArrayList<>(); Tree<Long> t1 = new Tree<>(); t1.setId(1L); t1.setPare

2021-12-03 14:11:43 1954

原创 SpringBoot获取resources下的文件

例如下载/resources/excel/template.xlsx @GetMapping("/download") public void downloadFile(HttpServletRequest request, HttpServletResponse response) { String fullFileName = "excel/template.xlsx"; ExcelUtils.ex

2021-12-01 16:56:37 919

原创 Jackson自定义反序列化,将对象属性反序列化成字符串

public class NoticeResponse { @JsonDeserialize(using = ContentSerializer.class) private String content;}static class ContentSerializer extends JsonDeserializer<String> { public ContentSerializer() { } @Override .

2021-11-23 18:49:22 735

原创 查看mysql锁

-- 显示用户正在运行的线程show full processlist;show processlist;select * from information_schema.processlist where db='db_name';-- 查看innodb的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;-- 查看事务对应的线程select * from information_schema.processlist where ID=339

2021-09-26 16:05:07 116

原创 Mybatis-Plus使用枚举类型int值,Mysql tinyint(1)返回null

问题描述:Mybatis-Plus在使用枚举类型,如果Mysql数据库中字段类型是tinyint(1) 而枚举值类型为Integer,导致转换时枚举类型为null。修改:tinyint(2) 即可

2021-05-07 20:44:42 1311 1

原创 SpringSecurity异步执行时上线文传递

官网说明: https://spring.io/guides/topicals/spring-security-architecture

2021-05-07 20:42:03 157

原创 SpringBoot发送邮件报错:Got bad greeting from SMTP host: smtp.exmail.qq.com, port: 465, response: [EOF]

错误Got bad greeting from SMTP host: smtp.exmail.qq.com, port: 465, response: [EOF]原配置:spring: mail: default-encoding: UTF-8 host: smtp.exmail.qq.com password: password port: 465 username: [email protected]修改后:spring: mail:

2021-03-26 11:28:34 9843 4

原创 高德地图逆地理编码时city返回数组或者空字符串的反序列化的问题

问题描述高德地图逆地理编码接口返回数据是,city字段有时为[], 有时为字符串:请注意:当城市是省直辖县时返回为空,以及城市为北京、上海、天津、重庆四个直辖市时,该字段返回为空;使用Jackson反序列化时会有问题,解决办法如下: @Getter @Setter @ToString public static class AddressComponent { private String country; private Stri

2021-03-02 19:04:50 1491

转载 替换文本中的URL为超链接标签<a>

public static String regexURL(String str) { String regex = "((http|ftp|https)://)?" + "(([a-zA-Z0-9\\._-]+\\." + "[a-zA-Z]{2,6})|([0-9]{1,3}\\.[0-9]{1,3}\\." + "[0-9]{1,3}\\.[0-9]{1,3}))(:[0-9]

2020-12-09 18:16:54 462

原创 @types/wechat-miniprogram/index.js 未找到npm包入口文件?

使用npm i vant-weapp -S --production会改变目录结构,我是通过npm i @vant/weapp -S – production构建以后,删除node_modules下的@types整个文件夹,然后再用工具 → 构建npm的参考:https://developers.weixin.qq.com/community/develop/doc/0006285df40970c3ac2bf536c51400...

2020-11-03 14:12:43 1561

原创 升级到Springboot2之后shiro登录403

问题描述:springboot从1.5 到 springboot2.1 时,Shiro的配置都没有变,但是登录url也被拦截了返回403原因:在springboot1.5中server: context-path: /myapp升级到2之后,需要改为server: servlet: context-path: /myapp...

2020-10-14 11:15:50 390

原创 java.lang.SecurityException: JCE cannot authenticate the provider BC

错误信息: java.lang.SecurityException: JCE cannot authenticate the provider BC环境描述:jdk 11.0.3tomcat 8.5.8加解密依赖hutool<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.

2020-10-10 18:53:50 1365

原创 Shiro Realm中使用dubbo的service时无法注入的问题

问题描述ShiroConfig 中配置Realm,而Realm中调用了dubbo的服务。ShiroConfig.java@Autowiredprivate IShiroService shiroService@Bean("shiroDbRealm")public ShiroDbRealm shiroDbRealm() { ShiroDbRealm shiroDbRealm = new ShiroDbRealm(); // 测试 shiroService 尚未注入 sh

2020-09-30 11:37:24 273

原创 NoSuchAlgorithmException: Cannot find any provider supporting AES/CBC/PKCS7Padding

参考:https://www.liaoxuefeng.com/wiki/1252599548343744/1305362418368545Java标准库不支持AES/CBC/PKCS7Padding 可以使用BouncyCastle库中的算法。具体操作添加依赖<dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk15on</artifact

2020-09-29 12:11:43 810 1

原创 java8升级到java11时maven编译报错 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plug

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project orderapp: Fatal error compiling: CompilerException: NullPointerException -> [Help 1]解决办法:添加Maven依赖<dependency> <gro

2020-08-24 18:21:08 431

原创 Docker+ Springboot本地模拟集群

第一步:拉取nginx的官方镜像镜像地址: https://hub.docker.com/search?q=nginx&type=image使用NGINX的官方镜像,然后拉取到本地执行docker images如果有下面的信息则表示拉取成功第二步:nginx.conf文件如下user nginx;worker_processes auto; # error_log /Users/mac/Desktop/nginx/log/error.log warn;# pid

2020-06-09 09:58:10 279

转载 Http Https Tcp概述

参考资料:https://juejin.im/post/5d7085f6f265da03dd3d92f6https://www.cnblogs.com/ttltry-air/archive/2012/08/20/2647898.htmlhttps://www.zhihu.com/question/302412059https://juejin.im/post/5ab308e9f265da238e0da39bhttps://www.w3ctech.com/topic/1563https://dr

2020-05-21 19:20:18 552

原创 JAVA优雅的退出机制

JAVA优雅的退出机制参考:Netty 优雅退出机制和原理Java 优雅地退出程序每天一个linux命令(42):kill命令一、JAVA进程退出时机:虚拟机中可能同时有多个线程运行,只有当所有的非守护线程(通常都是用户线程)都结束的时候,虚拟机的进程才会结束,不管当前运行的线程是不是main线程。main 线程运行结束,如果此时运行的其他线程全部是 Daemon ...

2020-01-17 10:27:28 1339

原创 RestTemplate打印响应结果

https://github.com/spring-projects/spring-android/blob/master/spring-android-rest-template/src/main/java/org/springframework/http/client/BufferingClientHttpResponseWrapper.javaimport lombok.extern.sl...

2019-06-14 11:43:31 3106

原创 基于切面的访问次数限制

对一个某些接口,比如获取验证码接口想限制用户10分钟内最多获取5次验证码。实现如下:AccessLimit.javaimport java.lang.annotation.*;import java.util.concurrent.TimeUnit;/** * 接口防刷注解(访问限制) * * @author redreamer */@Documented@Target({E...

2019-03-21 11:50:52 610

转载 在Spring MVC中使用注解的方式校验RequestParams

转自:https://www.jianshu.com/p/51e8d2702ca1概述Spring MVC支持Bean Validation,通过这个验证技术,可以通过注解方式,很方便的对输入参数进行验证,之前使用的校验方式,都是基于Bean对象的,但是在@RequestParam中,没有Bean对象,这样使得校验无法进行,可以通过使用@Validated注解,使得校验可以进行。...

2019-03-20 18:17:40 537

转载 Java SPI

参考:Java SPI机制详解Java中SPI机制深入及源码解析Java SPI思想梳理Java SPI的概念SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。SPI是一种动态替换发现的机制, 比如有个接口,想运行时动态的给它添加实现,你只需要添加一个实现。在jdk6里面引进的一个新的特性ServiceLoader,从...

2018-12-17 16:27:57 244

转载 git rebase 和 git merge 的区别

转自:https://www.jianshu.com/p/f23f72251abcDescriptiongit rebase 和 git merge 一样都是用于从一个分支获取并且合并到当前分支,但是他们采取不同的工作方式,以下面的一个工作场景说明其区别场景:如图所示:你在一个feature分支进行新特性的开发,与此同时,master 分支的也有新的提交。为了将master 上新的提交...

2018-12-17 15:16:19 304

原创 HotSpot的垃圾回收算法实现及垃圾收集器 《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记六

参考资料:《深入理解Java虚拟机:JVM高级特性与最佳实践》第三章https://blog.csdn.net/eeelan/article/details/76166996文章目录HotSpot的垃圾回收算法实现枚举根节点安全点安全域垃圾收集器新生代收集器(复制算法)Serial收集器ParNew收集器Parallel Scavenge收集器(吞吐量优先)老年代收集器。Serial O...

2018-12-10 18:44:35 296

转载 垃圾收集器和内存分配策略 之 JVM垃圾收集算法《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记五

参考资料:《深入理解Java虚拟机:JVM高级特性与最佳实践》第三章https://www.jianshu.com/p/114bf4d9e59e垃圾回收算法标记-清除算法标记-清除(Mark-Sweep)算法是现代垃圾回收算法的思想基础。标记-清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。一种可行的实现是,在标记阶段,首先通过根节点,标记所有从根节点开始的可达对象。因此,未被...

2018-12-10 17:41:14 192

转载 垃圾收集器和内存分配策略 之 对象存活检测《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记四

垃圾收集器和内存分配策略对象存活检测应用计数可达性分析算法再谈引用垃圾回收算法HotSpot的算法实现内存分配和回收侧率参考资料:《深入理解Java虚拟机:JVM高级特性与最佳实践》第三章https://blog.csdn.net/xyh269/article/details/53106790根据java内存模型,在内存中程序计数器、虚拟机栈、本地方法栈跟线程的生命周期相同,这几个区域...

2018-12-10 17:13:20 307

转载 OutOfMemory实战《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记三

参考:《深入理解Java虚拟机:JVM高级特性与最佳实践》2.4小节https://cread.jd.com/read/startRead.action?bookId=30189426&amp;readType=1文章目录Java堆溢出虚拟机栈和本地方法栈溢出方法区和运行时常量池溢出本机直接内存溢出JDK8 元空间(MetaSpace)Java堆溢出Java堆用于存储对象实例,只要不...

2018-12-06 15:48:23 408

转载 HotSpot虚拟机对象揭秘 《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记二

参考文章:HotSpot虚拟机对象大揭秘《深入理解Java虚拟机:JVM高级特性与最佳实践》2.3小结HotSpot虚拟机对象揭秘Hotspot虚拟机对象揭秘HotSpot虚拟机对象揭秘对象的创建对象的内存布局对象的访问定位以HotSpot虚拟机和常用的内存区域Java堆为例,探索一下对象的分配、布局以及访问的全过程对象的创建虚拟机遇到一条new指令时检查类是否已被加载...

2018-12-06 13:51:18 160

转载 JVM内存模型《深入理解Java虚拟机:JVM高级特性与最佳实践》笔记一

转自:简书 https://www.jianshu.com/p/a60d6ef0771b内存划分java虚拟机按照运行时内存使用区域划分如图:一、程序计数器(Program Counter Register)程序计数器是一块较小的内存空间,他可以看做是记录当前线程执行程序的位置,改变计数器的值来确定执行的下一条指令,比如循环、分支、方法跳转、异常处理,线程恢复都是依赖程序计数器来完成。...

2018-12-05 14:20:59 187

转载 【超全】网页转为图片的那些工具

原文地址:https://www.zhyd.me/article/48敲黑板,划重点:cssbox:目前我在用的, maven依赖如下&lt;dependency&gt; &lt;groupId&gt;net.sf.cssbox&lt;/groupId&gt; &lt;artifactId&gt;cssbox&lt;/artifactId&gt; &lt;version&gt;4.12...

2018-11-13 14:27:58 1057

原创 Chrome浏览器变身文本编辑器只需要一行代码

在浏览器的导航栏中输入:data:text/html, &amp;amp;amp;amp;amp;lt;html contenteditable&amp;amp;amp;amp;amp;gt;效果如下:上面的内容是从https://developers.weixin.qq.com/miniprogram/dev/framework/MINA.html复制过来的,竟然带着格式!!!...

2018-10-24 14:08:18 3615

原创 Redis集群简介《Redis开发与运维读书笔记》

Redis集群数据分布虚拟槽分区数据分布Redis采用哈希分区规则,常见的哈希分区规则如下:1)节点取余分区:hash(key)%N = key虽在的节点2)一致性哈希分区:为系统的每个节点分配一个token,这些token组成一个hash环。数据读写执行节点查询操作是先 hash(key) 然后顺时针找到第一个大于改哈希值的token节点。好处:加减节点只影响相邻节点坏处:加减节点...

2018-09-29 18:24:45 411

原创 Redis哨兵《Redis开发与运维读书笔记》

Redis哨兵主从复制的问题:Redis Sentinel的高可用Sentinel主要功能实现原理三个定时任务故障转移客户端逻辑高可用读写分离总结主从复制的问题:1) 主节点故障需要手动干预将从节点提升为主节点,同时需要修改应用方的主节点地址2)主节点写能力收单节点限制2)主节点储存能力收单节点限制Redis Sentinel的高可用Redis在2.8版本之后提供,每个Sentinel...

2018-09-29 16:40:05 305

原创 Redis理解内存《Redis开发与运维读书笔记》

文章目录内存的消耗内存划分内存的消耗可以使用info memory 查看内存消耗。内存划分对象内存 = sizeof(key) + sizeof(value) 应避免使用过长的key缓冲内存* Redis自身内存:消耗比较小可忽略不计* 客户端缓存:所有接入Reids服务器的TCP连接的输入输出缓存* 复制积压缓存区:可以有效避免全两复制* AOF缓存:用户Redis重写期间保...

2018-09-28 17:30:51 457

原创 Redis复制《Redis开发与运维读书笔记》

文章目录配置建立复制断开复制安全性拓扑原理复制过程数据同步全量复制部分复制复制功能是高可用Redis的基础。主从节点之间维护心跳(长连接)和偏移量检查机制,保证主从通信正常和数据一致Redis复制过程是异步的,主节点完成后直接返回客户端,不等待从节点复制完成,可能存在从节点延时。当使用从节点用户读写分离时会存在数据延迟、过期数据、从节点可用性问题主机节点存在多个从节点或者一台机器上部署...

2018-09-27 18:53:47 352

原创 Redis持久化《Redis开发与运维读书笔记》

Redis支持RDB和AOF两种持久化机制:RDB (Redis Dump Binary )RDB持久性以指定的时间间隔执行数据集的时间点快照触发机制手动触发命令说明save阻塞Redis直到RDB过程完成bgsaveRedis进程执行fork创建子进程来执行RDB。阻塞只发生在fork阶段自动触发使用save m n 表示m秒内集存n次修改...

2018-09-27 13:22:13 261

原创 Redis 订阅发布《Redis开发与运维读书笔记》

简介Redis 的 SUBSCRIBE 命令可以让客户端订阅任意数量的频道, 每当有新信息发送到被订阅的频道时, 信息就会被发送给所有订阅指定频道的客户端。客户端在执行订阅命令后进入订阅状态,只能接受subscribe、psubscribe、unsubscribe、punsubscribe的四个命令新开启的客户端不能收到之前的消息,因为Redis的消息是不持久化的命令发布消息pu...

2018-09-19 18:10:03 215

原创 Redis GEO 《Redis开发与运维读书笔记》

简介Redis 在 3.2 版本以后增加了地理位置 GEO 功能,支持存储地理位置信心用来实现注入附近位置、摇一摇等依赖地理位置的功能。Redis的GEO功能的地产实现是基于zset的Redis的GEO功能借鉴了NoSQL数据库Ardb实现的,Ardb作者来自中国。命令增加地理位置信息geoadd key longitude latitude name [longitude l...

2018-09-19 17:35:00 438

原创 Redis HyperLogLog 《Redis开发与运维读书笔记》

《Redis开发与运维读书笔记》数据结构模型HyperLogLog本身不是新的一种数据结构,实际类型为字符串。而是一种 基数算法 。通过HyperLogLog可以用极小的内存空间完成独立总数的计算,数据集可以是IP、Email、ID等。常用命令:添加pfadd key element [element...] 如果添加成功返回 1计算独立数pfcount key [key...

2018-09-19 15:30:35 334

hessian-3.1.3

hessian-3.1.3.jar 274K, 可是maven上是273K

2015-06-09

jquery.autocomplete

jQuery的Autocomplete(自动完成、自动填充)插件

2015-01-29

Core Python Programming----Source Code

Core Python Programming----Source Code python 核心编程 实例代码

2013-05-15

pinyin4j-2.5.0.zip

汉子转换成拼音,识别多音字。pinyin4j-2.5.0.zip

2012-12-17

swing画的一个数据库客户端

swing画的一个数据库客户端,现在支持DB2,MySQL和SQLServer,而且有不少bug,欢迎大家完善啊

2012-07-27

Swing画的界面

swing做的一个家庭理财系统的,swing做的一个家庭理财系统的

2012-07-27

空空如也

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

TA关注的人

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