JAVA
文章平均质量分 86
LangForOne
奔三的小全栈,现任某互联网科技公司研究院开发工程师,前端后端皆有探究,不断提高,無限進步。文章多数为分享在工作开发项目中遇到的问题和一些思路经验,以及可有可无的心得分享
展开
-
MyBatis-Plus拦截器接口InnerInterceptor失效?因MyBatis缓存机制而踩的一个深坑
接口是 MyBatis-Plus 提供的一个拦截器接口,用于实现一些常用的 SQL 处理逻辑。例如某个组件运作在多系统的平台上,不同系统需要隔离,于是可以通过这个拦截器接口,给每一条要执行的sql末尾拼接一个的条件来实现不同系统只能查到对应系统ID的数据。而今天项目遇到的一个bug情景如下:所有的sql原本都要通过拦截器拼接这个校验系统ID的条件,但其中一条sql因为要查整个数据库中的数据是否有重复,所以就要去掉这个拼接的条件进而查询整个库表。原创 2024-09-06 18:40:53 · 743 阅读 · 0 评论 -
封装一个用于批量释放关闭连接资源的方法
直入主题,工具类来!原创 2024-08-08 18:40:31 · 261 阅读 · 0 评论 -
Java 8 Supplier函数式接口介绍及实战案例
Supplier 是 Java 8 引入的一个函数式接口,它属于 java.util.function 包。Supplier 接口表示一个不接受任何参数但返回某种类型结果值的函数。它定义了一个 get() 方法,该方法没有参数,但返回一个泛型 T 类型的值。在某些情况下,你可能希望只有在真正需要结果时才进行计算或生成值。使用 Supplier,你可以将计算或生成值的逻辑封装在 get() 方法中,并在需要时调用它。原创 2024-05-15 10:29:55 · 994 阅读 · 0 评论 -
JAVA时间类中Date类、Calendar类和LocalDateTime类的简介与对比区别
时间类一直是代码开发中经常用到的东西,时间类在JDK中刚出现到国内最常用的1.8版本,一共迭代了三次。分别是Date类、Calendar类和LocalDateTime类。虽然JDK在更新,但是我看到很多的项目还是用着最初的Date类,这期就来讲一下三代时间类的区别。原创 2023-12-21 13:26:52 · 562 阅读 · 0 评论 -
JAVA实现敏感词高亮或打码过滤:sensitive-word
练手项目中实现发表文章时检测文章是否带有敏感词,以及对所有敏感词的一键过滤功能。原创 2023-12-08 12:29:56 · 1748 阅读 · 0 评论 -
SpringCloud Alibaba组件入门全方面汇总(中):服务熔断降级-Sentinel
Sentinel 可以通过自定义异常和 @SentinelResource 注解来提供更加灵活的保护机制。首先,Sentinel 允许用户自定义异常处理类,通过继承 BlockException 类并重写其中的方法,可以定制异常处理逻辑。同时,在定义资源时,可以使用 @SentinelResource 注解来指定异常处理类,以便在发生异常时执行自定义的异常处理逻辑。FlowException 限流异常DegradeException 降级异常ParamFlowException 参数限流异常。原创 2023-11-14 23:23:35 · 398 阅读 · 0 评论 -
Java中对date数据做加减时间运算——Calendar类
在日常开发中,我们经常会遇到需要对日期进行加减操作的场景,比如在某个时间点上加上指定的小时数。本文将介绍如何使用JAVA的Date类来实现对日期加小时的操作,并提供具体的步骤和代码示例。原创 2023-11-06 22:00:23 · 1780 阅读 · 0 评论 -
activiti的核心对象与API与对应操作的表与核心字段
获取方式:对应的表:act_re_deployment用于存储流程部署的相关信息。该表记录了每个流程部署的唯一标识符(ID)、名称(NAME)、类别(CATEGORY)、租户标识符(TENANT_ID)、键(KEY)以及部署时间(DEPLOY_TIME)等信息。核心字段:获取方式:.deploymentId(“流程部署id”).processDefinitionId(“流程定义id”).processDefinitionKey(“流程定义的key”)原创 2023-11-03 00:21:46 · 595 阅读 · 0 评论 -
用大白话聊聊SpringBoot的自动配置原理(面试题详解)
首先,自动配置是Auto-Configuration,针对的是SpringBoot中的配置类,而自动装配是Autowire,针对的是Spring中的依赖注入。原创 2023-10-30 22:08:52 · 530 阅读 · 0 评论 -
SpringBoot内置工具类之断言Assert的使用与部分解析
断言是一个判断逻辑,用来检查不该发生的情况;断言的判定规则:2.1.值为true时,程序从断言语句处继续执行;2.2.值为false时,程序从断言语句处抛出异常,停止执行;2.3.早在JDK的1.4版本已经引入断言assert,通过命令-enableassertions开启,通过命令-disableassertions关闭;不加参数,全局生效;加了参数,只在某个类中使用;具体可通过java help命令查看;原创 2023-10-28 22:59:14 · 2245 阅读 · 4 评论 -
maven之父子工程&版本控制&案例实战,及拓展groupId和artifactId的含义
用于父子工程项目,什么是父子工程?顾名思义,maven父子项目是一个有一个父项目,父项目下面又有很多子项目的maven工程,当然,子项目下面还可以添加子项目,从而形成一个树形的结构。那么,这么做有什么好处呢?有以下两点:父工程package 需要指定pom子工程需要声明parent,否则无法使用父pom的依赖导入依赖和dependencyManagement 一起出现,指定的版本优先级更高,通常出现在父pom通常parent用于做结构管理,声明子工程继承父工程的A依赖B C继承BA = B的依赖 +原创 2023-10-28 22:45:24 · 1755 阅读 · 0 评论 -
Maven入门与开箱即用
Maven 翻译为“知识的积累”,“专家”,“行家”,是一个跨平台的项目管理工具;Maven 主要用作基于 Java 平台的项目(Maven 本身也是 Java 编写的)的构建、依赖包管理和项目信息管理;Maven 能提供一种项目的配置,配置好的项目,只需要运行一条简单的命令,就能完成重复的,繁琐的构建动作;Maven 能提供一种项目的依赖配置,配置好的项目,Maven 能自动的从 Maven 的中央仓库中帮我们下载并管理项目依赖的 jar 包。原创 2023-10-28 22:02:14 · 655 阅读 · 0 评论 -
如果面试问到你redis的常用数据类型,你怎么和面试官聊上十分钟?附redis各数据类型常用命令
一道简单的面试题,你能给出更高大上的回答吗?原创 2023-10-22 19:57:29 · 172 阅读 · 0 评论 -
JAVA成员变量首字母小写,第二个字母大写报错问题(原因:Lombok与Spring冲突)
也就是说Lombok与Spring针对这种首字母小写,第二个字母大写的对象的解析是不同的,而这也就自然而然影响到默认的Jackson的解析,导致返回给前端的属性名称不是我们预期中的名称,则前端判断取得的值为null,继而报错。JAVA类里定义成员变量使用首字母小写,第二个字母大写。原创 2023-09-16 11:18:17 · 1244 阅读 · 0 评论