![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 73
小狐憨憨
公众号:小柯贤,尽量每天都更新知识
展开
-
求求你别再写上千行的类了,试试 IDEA 这些牛逼的重构技巧吧!
答应我,别再写上千行的类了好吗最近在对已有项目进行扩展的时候,发现要改动的一个类它长766行,开放了近40个public接口,我流着泪把它给改完了。为了防止这样的惨剧再次发生在我的身上,我觉得有必要写一篇博客来让广大程序猿同胞知道代码重构的重要性如果你身边有一个类写上千行的猿,一定要把此文转给ta为什么类不能过长?类过长——读不通,扩展不通 读不通——直接用滚轮滚都得好几秒,就算是原作者,时间长了恐怕也难以理清整个类,更不用说是其他的读者 扩展不通——一个类有转载 2021-09-14 20:14:07 · 250 阅读 · 0 评论 -
Java 并发之 Fork/Join 框架
什么是 Fork/Join 框架Fork/Join 框架是一种在 JDK 7 引入的线程池,用于并行执行把一个大任务拆成多个小任务并行执行,最终汇总每个小任务结果得到大任务结果的特殊任务。通过其命名也很容易看出框架主要分为 Fork 和 Join 两个阶段,第一阶段 Fork 是把一个大任务拆分为多个子任务并行的执行,第二阶段 Join 是合并这些子任务的所有执行结果,最后得到大任务的结果。这里不难发现其执行主要流程:首先判断一个任务是否足够小,如果任务足够小,则直接计算,否则,就拆分成几个更小的小原创 2021-09-08 18:44:46 · 337 阅读 · 0 评论 -
JVM 性能调优监控工具 jps、jstack、jmap、jhat、jstat、hprof 详解
现实企业级Java应用开发、维护中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 ......这些问题在日常开发、维护中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些问题是Java程序员进阶的必备要求。本文将对一些常用的JVM性能调优监控工具进行介绍,希望能起抛砖引玉之用。一、 jps(转载 2021-08-11 20:58:35 · 373 阅读 · 0 评论 -
推荐一个微信小程序商城项目
推荐一款实用的微信小程序商城项目,这个项目不仅有商城基本的功能,比如:商品管理、订单管理、用户管理,还有分销功能,具备广告、优惠券等功能。技术选型后端采用 Spring 技术栈,使用到的框架主要包括:Spring、MyBatis、MyBatis-Plus、Shiro、Druid、Fastjson、MySQL等技术。前端技术:Vue、iview、Jquery、Bootstrap、jqgrid、ztree等技术。实现功能该小程序商城实现功能包括用户模块、商城模块、推荐管理、订单管理、系统管理模块原创 2021-07-29 20:48:21 · 606 阅读 · 0 评论 -
这个 GitHub 项目登上了热榜!带领大家阅读 Spring 源码
Spring 框架是 Java 后端开发必不可少的框架技术,但是大多数开发者仅仅停留在会用的阶段。对于背后的机制如何,大多数人无法说出来。但 Spring 技术还是面试常问的主题,它背后的机制原理更是重中之重。Spring 框架设计用到了很多 Java 语言的实用特性,比如反射,代理,注解等。还应用了很多设计模式的思想。但网上大部分的教程、博客都是教你怎么用这个框架,原理也是泛泛而谈。自己想看源码,却又不知道从何下手,打算硬着头皮看又看不懂。不过,不用愁!今天小逛发现了一个宝藏项目,原创 2021-07-28 21:38:39 · 222 阅读 · 2 评论 -
RSA+AES实现接口验签和参数加密
RSA非对称加密RSA是一种常用的非对称加密算法,加密和加密使用不同的密钥,常用于要求安全性较高的加密场景,比如接口的验签和接口数据的加密与解密。与非对称加密算法对比,其安全性较高,但是加密性能却比较低,不适合高并发场景,一般只加密少量的数据。AES对称加密AES是一种最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的),加密和解密使用的是相同的密钥。其加密性能好,加密解密速度非常快,内存需求低,适用于经常发送数据的场合。RSA+AES实现接口验签和请求参数的加密与解密背景:做转载 2021-07-11 09:36:30 · 1197 阅读 · 0 评论