![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 62
JAVA
ppo_wu
这个作者很懒,什么都没留下…
展开
-
使用Redis的SETNX命令实现分布式锁
分布式锁是一种用于在分布式系统中控制多个节点对共享资源进行访问的机制。在分布式系统中,由于多个节点可能同时访问和修改同一个资源,因此需要一种方法来确保在任意时刻只有一个节点能够对资源进行操作,以避免数据不一致或冲突。分布式锁就是用来实现这种互斥访问的工具。原创 2024-07-18 10:31:56 · 1079 阅读 · 0 评论 -
详细解析Kafaka Streams中各个DSL操作符的用法
在Kafka Streams中,DSL(Domain Specific Language)指的是一组专门用于处理Kafka中数据流的高级抽象和操作符。这些操作符以声明性的方式定义了数据流的转换、聚合、连接等处理逻辑,使得开发者可以更加专注于业务逻辑的实现,而不是底层的数据流处理细节。(Transformation Operators):这些操作符用于对KStream或KTable中的数据进行转换,如mapflatMapfilter等。它们允许你对流中的每个元素应用一个函数,从而生成新的流或表。原创 2024-07-17 10:50:20 · 1591 阅读 · 0 评论 -
浅析Kafka Streams中KTable.aggregate()方法的使用
方法是 Kafka Streams 中进行状态化聚合的关键,它允许你定义如何初始化和更新聚合状态,以及如何存储和管理这些状态。通过合理配置,你可以实现复杂的数据流处理需求,如累积计数、滑动窗口计算等。原创 2024-07-12 14:42:08 · 932 阅读 · 0 评论 -
浅析Kafka Streams消息流式处理流程及原理
结合案例:统计消息中单词出现个数来测试并说明kafka-stream消息流式处理的执行流程原创 2024-07-12 00:01:31 · 1035 阅读 · 0 评论 -
在SpringBoot中使用redis中的zset实现延迟任务
(有序集合)适合实现延迟任务的原因主要有以下几点:2、配置redis3、创建ZSET操作服务创建一个服务类来封装对ZSET的操作:4、定时轮询ZSET创建一个定时任务来定期检查ZSET中是否有到期的任务:负责添加和处理延迟任务,而负责定期调用方法来检查和处理到期的任务。原创 2024-05-30 18:29:07 · 417 阅读 · 0 评论 -
java中String、List、数组之间的转换方式
在Java中,StringList和数组(如String[])之间的转换是常见的操作。下面是如何在它们之间进行转换的示例。原创 2024-05-29 21:26:48 · 972 阅读 · 0 评论 -
浅析AOP中的JoinPoint的使用
JoinPoint接口提供了多个方法,允许我们在切面中获取与连接点(即目标方法执行点)相关的信息。getArgs()SignaturegetThis()toString()getKind()下面是一个使用JoinPoint在这个示例中,我们定义了一个切面InfoAspect,它有一个@Before通知,该通知会在执行包下所有方法之前触发。在方法中,我们通过JoinPoint参数获取了方法名、目标对象、方法参数、代理对象、连接点类型和源代码位置等信息,并将它们打印出来。原创 2024-05-28 17:55:38 · 627 阅读 · 0 评论 -
浅析SpringBoot中的AOP以及自定义注解类
下面我们自定义一个注释@Target(ElementType . METHOD) // 注解应用的地方(方法) @Retention(RetentionPolicy . RUNTIME) // 注解的生命周期(运行时) public @interface LogExecutionTime {// 可以定义一些属性,例如是否启用日志 boolean enabled() default true;原创 2024-05-28 17:32:44 · 1199 阅读 · 0 评论 -
SLF4J自定义方法输出日志信息
在Slf4j中封装一个方法,每当调用这个方法时在日志中输出当前时间、线程id和当前类,并可输出传入的日志信息。现在,你可以在你的代码中这样使用。创建一个自定义工具类。原创 2024-05-26 12:24:49 · 244 阅读 · 0 评论 -
mybatis-plus自定义拦截器统计方法中调用所有数据库表的名称
/定义正则表达式,提取出sql语句中的关键字 private static final Pattern TABLE_NAME_PATTERN = Pattern . compile("(FROM|UPDATE)\\s+([\\w\\._]+)");// 解析SQL语句,提取表名称 Matcher matcher = TABLE_NAME_PATTERN . matcher(sql);原创 2024-05-21 19:25:47 · 325 阅读 · 1 评论 -
mybatis中foreach标签的用法说明
foreach>标签的基本语法如下:原创 2024-05-08 01:02:46 · 345 阅读 · 1 评论 -
在Springboot中,使用freemarker生成静态化HTML文件
Springboot版本:2.3.9JDK版本:JDK 17。原创 2024-04-30 23:04:12 · 441 阅读 · 0 评论 -
gateway自定义全局过滤器,统计接口调用时间
【代码】gateway自定义全局过滤器,统计接口调用时间。原创 2024-03-20 03:48:21 · 354 阅读 · 1 评论 -
捕获SpringSecurity异常,进行统一返回
需要捕获SpringSecurity中的异常,通过统一返回类封装后返回给前端,但是使用@ControllerAdvice的全局异常处理器无法捕获到SpringSecurity中的异常,原因如下:在SpringSecurity中,如果认证或者授权的过程中出现了异常会被ExceptionTranslationFilter捕获到。所以如果我们需要自定义异常处理,我们只需要实现AuthenticationEntryPoint和AccessDeniedHandler接口然后配置给SpringSecurity即可。原创 2023-02-22 10:50:03 · 2067 阅读 · 0 评论 -
JAVA使用FTP将本地文件传输到虚拟机中
vsftpd默认只能将文件上传到用户目录下(上面的 /ftpuser),如果想要将文件上传到其他目录,上传前一定要对上传的目标目录进行授权,否则会上传失败。到此虚拟机环境就搭建好了,下面编写java代码。创建成功后 /home 下会生成用户目录。下面对 /tmp/images 目录授权。原创 2023-02-16 21:19:29 · 534 阅读 · 0 评论