SpringBoot
文章平均质量分 59
SpringBoot实战
素人岳
这个作者很懒,什么都没留下…
展开
-
【Java多线程】ThreadLocal内存泄露问题
内部维护的是一个的数据结构(类似于Map);每个线程都可以通过set()和get()来对这个局部变量进行操作,当然还有remove()方法;同一个所包含的对象,在不同的Thread中有不同的副本;适合那些需要公共方法,但私有变量的场景,如获取当前用户;不再被使用的对象或者变量占用的内存不能被回收,就是内存泄露;在这里要引到另外一个知识点,就是弱引用,不懂的看这篇文章;通过以上文章会得知:当系统进行GC时,只要垃圾回收器扫到,不管空间够不够,都会被回收;原创 2022-09-09 15:23:49 · 347 阅读 · 0 评论 -
SpringBoot整合es提示错误:ElasticsearchException[Invalid or missing build flavor [oss]]
SpringBoot整合es提示错误:ElasticsearchException[Invalid or missing build flavor [oss]]问题属于Springboot中引入的es版本与es服务版本不一致导致,当前项目引入es版本为,服务器版本为,版本修改统一即可;原创 2022-07-12 09:40:23 · 5421 阅读 · 0 评论 -
Spring中IOC、DI以及AOP名词解释
Spring中IOC、DI以及AOP名词解释;网上的解释好像是在搞什么学术研究,看着头大,以下为个人见解;原创 2022-07-07 22:15:20 · 372 阅读 · 0 评论 -
一文读懂spring.factories作用
一文读懂spring.factories作用;如果想把容器注册在中,那么路径必须在启动类包的根路径下,没有的话,也有2种方式进行注册:SPI扩展机制在介绍之前,先贴一下 的定义:在 中也有一种类似的加载机制,路径位于jar包中的,数据为key=value格式存储,类似于下面这种,作用就是为了将指定类,注入到中;............原创 2022-07-05 16:47:47 · 1938 阅读 · 0 评论 -
分布式ID之雪花算法原理以及代码实现——Java版
SnowFlake 算法,是 Twitter 开源的分布式 ID 生成算法。其核心思想就是:使用一个 64 bit 的 long 型的数字作为全局唯一 ID。在分布式系统中的应用十分广泛,且 ID 引入了时间戳,基本上保持自增的,后面的代码中有详细的注解;这 64 个 bit 中,其中 1 个 bit 是不用的,然后用其中的 41 bit 作为毫秒数,用 10 bit 作为工作机器 ID,12 bit 作为序列号;Java代码实现............原创 2022-07-01 21:02:15 · 342 阅读 · 0 评论 -
Springboot自定义注解 + AOP映射字典表
项目中会有字典表,而业务表中存储的是字典表的id,每次查询的时候都需要,感觉不是太舒服,所以,这种情况可以使用自定义注解配合AOP环绕通知解决;类似的返回json如格式:下面贴代码:原创 2022-06-20 18:00:39 · 1065 阅读 · 0 评论 -
Spring自定义事件发布与监听
在使用Spring构建的应用程序中,适当使用事件发布与监听的机制可以使我们的代码灵活度更高,降低耦合度。Spring提供了完整的事件发布与监听模型,在该模型中,事件发布方只需将事件发布出去,无需关心有多少个对应的事件监听器;监听器无需关心是谁发布了事件,并且可以同时监听来自多个事件发布方发布的事件,通过这种机制,事件发布与监听是解耦的。......原创 2022-06-17 22:13:00 · 580 阅读 · 0 评论 -
Springboot前后端分离项目生成验证码
图形验证码Utils:展示样式:接口根据UUID判断。图形验证码Utils:/** * 图形验证码Utils */@Componentpublic class ValidateCode { private static final Logger logger = LoggerFactory.getLogger(ValidateCode.class); ResultObject resultObject = new ResultObject(); // 图片的原创 2020-07-30 12:57:55 · 1146 阅读 · 4 评论 -
Springboot自定义注解拦截用户登录
自定义注解很简单,无非就是了解几个元注解,元注解都在java.lang.annotation包:@Target@Retention@Documented@Inherited常用的就以上四个,下面写的详细点:@Target描述注解的使用范围(可以修饰什么地方)public enum ElementType { TYPE, // 类、接口、枚举类 FIELD, // 成员变量(包括:枚举常量) METHOD, // 成员方法 PARA原创 2020-07-17 14:57:38 · 558 阅读 · 0 评论 -
Springboot使用HandlerInterceptor拦截用户登录
拦截器:@Aspect@Componentpublic class LoginInterceptor implements HandlerInterceptor { private Logger logger = LoggerFactory.getLogger(LoginInterceptor.class); @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse原创 2020-07-10 22:03:12 · 1106 阅读 · 1 评论