首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JAVA进阶笔记
程序员拾山
创建于2022-12-24
订阅专栏
记录JAVA学习过程的每一个知识点。
等 11 人订阅
共26篇文章
创建于2022-12-24
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
接口防刷!利用redisson快速实现自定义限流注解
在日常开发中,如果对登录类接口不加以限制,理论上,通过技术手段,快速重试100000次,即可将验证码穷举出来。
tomcat:设计模式用的好,下班就能早
tomcat作为一款经典的轻量级应用服务器,自然也使用了很多优雅的设计模式。今天给大家简单介绍一下tomcat在初始化组件时使用的几种设计模式。
tomcat优化线程池的思路真的好,每个javaer都应该了解一下
本质上,池化技术是一种以空间换时间的做法。而tomcat作为web界的容器一哥,自然也使用了线程池这种优化手段,为了提高业务处理能力和支持更高的并发,tomcat还对线程池做了更进一步的优化。
SpringbootAdmin:轻量级的Springboot监控组件,用过的都说好
Springboot Admin是一个管理和监控Springboot项目的组件,分为服务端和客户端,两端通过http进行通信。由于其轻量级的特性,所以特别适合中小项目使用。
Springboot进阶:如何利用redis快速简单的实现全局接口限流
对于某些特殊的业务场景,比如抢单、秒杀等业务,会导致服务流量瞬间飙升,我们虽然可以通过部署集群的方式分散请求压力,但是仍然可能造成很大的请求延迟。 这时,我们可以通过接口限流的方式来保证系统的稳定运行
不要在线上滥用CopyOnWriteArrayList,姿势不对性能真的很拉胯
JDK为我们提供了很多用于并发场景的工具类,但是仍需要我们仔细了解每一种工具的使用场景,在不合适的场景使用不合适的工具,会导致性能更差。
Spring进阶:3步搞定MybatisPlus多数据源,详细配置及原理解析
MybatisPlus(MP)作为mybatis的增强工具,提供了配置多数据源的扩展,通过简单的几步配置,即可使用注解轻松切换数据源。
不规范使用ThreadLocal导致的bug,说多了都是泪
有时我们会在一个接口中缓存某些数据到ThreadLocal中,但是我们要意识到,处理请求的这些线程是由tomcat提供的,而tomcat提供的线程都是配置在一个线程池中的。
简单实用!利用redis轻松实现高并发全局ID生成器
Redis作为高性能的KV数据库,并且操作还是原子性的,所以用来做支持高并发的发号器十分合适。 本文给大家介绍3种常见的全局ID生成方式。 1,全局递增ID 目标:一直递增的全局ID。 2,以天为分割
函数式接口编程真没那么难,简单几行让你的代码更优雅
函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口,虽然看起来很抽象,但是一旦理解了其原理,使用起来还是很简单的。
Shiro用起来太痛苦?这个轻量级权限框架一行代码搞定登录
SaToken是一个轻量级的Java权限认证框架,目标是让鉴权变得简单、优雅,使用起来非常简单方便。
实现订单到期未支付自动关闭不会写?这6种方案任你挑选
本文介绍了常见的6种实现订单关闭的方案,不同的方案都有其适用的场景,各自的优缺点也不尽相同,大家可以根据自己的业务场景,选择合适的方案。
Java8之22个lambda表达式用法入门示例超简单,这还不会你就out了
lambda表达式简明扼要的以流水线的方式去处理集合内的数据,可以很轻松的完成过滤、分组、收集、归约这类操作。本文提供了22个lambda表达式用法入门示例。
Spring进阶:定义bean时容易踩的两个坑,连老手也容易犯错
Spring默认帮我们做了很多工作,使我们开发功能变得非常便捷,但是如果不了解背后的运行原理,大多数情况下可能项目也能跑起来,然而一旦出错就可能抓瞎了。
Spring项目中自动打印执行sql和耗时,这款神级插件你值得拥有
P6Spy是一个轻量级框架,只需简单配置,就可以无缝地拦截和记录数据库执行sql以及耗时,而无需对现有应用程序进行代码更改。
当我准备用SpringEvent优雅的解耦时,连续两个bug把我搞懵了
本文主要讲解了SpringEvent基本的使用方法,和平常开发中可能会遇到的一些问题。总的来说,Spring为了让大家用的更轻松,考虑了各种可能发生的情况,但是如果大家不了解背后的实现原理,就可能发生
还在用数据库自增ID做主键?建议了解一下雪花算法生成的分布式ID
雪花算法(Snowflake)是Twitter开源的一种生成分布式全局唯一ID的算法,产生的背景是为了满足Twitter每秒上万条消息的请求,其默认生成结果是一个64bit的long型数值。
上千star的分布式ID生产黑科技,让你再也不用为生成ID发愁了
sequence是一个基于雪花算法(Snowflake)实现的64位自增ID算法,从官方的性能测试数据来看,sequence每秒可以生成最多418万个有序的ID,已经基本满足绝大部分的业务场景。
盘点导致Spring事务失效的4个场景
事务是我们日常开发工作中无法避免的一个功能,深刻理解事务的运行机制,正确使用事务的声明式操作,才能让我们写出更健壮的代码。
下一页