当前页共 9 篇文章
2023-04-20
java如何使用redis分布式锁,该注意什么,实例代码进行阐述 在Java中,可以使用Redis实现分布式锁。Redis分布式锁的基本实现方式是在Redis服务器上使用SETNX命令创建一个键值对,键是锁的名字,值是锁的持有者标识。如果SETNX命令成功创建了键值对,则锁被获得;否则锁已经被其他进程持有,当前进程需要等待或者放弃获取锁。 以下是一个使用Redis实现分布式锁的示例代码: import redis.clients.jedis.Jedis; public class RedisDistributedLock { private Jedis jedis; private String lockKey; private
  • 诗与远方
  • 2023年04月20日
  • 187 阅读
  • 0 评论
JAVA
2023-04-20
新手java要了解的SpringBoot Starter 作用及原理 Spring Boot Starter 是 Spring Boot 框架中的一个重要组成部分,它的主要作用是简化项目依赖管理和自动配置,使开发者能够更快速、更轻松地创建和部署 Spring Boot 应用程序。 简化项目依赖管理:Starter 是一组预定义好的依赖集合,它将常用的库和框架组合在一起,为特定的功能提供了一致的版本管理。通过引入相应的 Starter,开发者可以避免手动添加和管理多个相关的依赖,从而减少了出错的可能性。 例如,如果你想在项目中使用 Spring Boot 和 MyBatis 进行数据库操作,你可以引入 mybatis-spring-boot-starter,它
  • 诗与远方
  • 2023年04月20日
  • 197 阅读
  • 0 评论
JAVA
2022-04-02
垃圾收集器 1. 概述 垃圾收集(Garbage Collection ,GC) 的历史比 Java 久远,GC 需要思考的 3 件事情: 哪些内存需要回收 什么时候回收 如何回收 垃圾收集器关注的是 Java 堆中的内存,后续讨论的内存分配与回收也指这部分内存 2. 判断一个对象是否可被回收 垃圾收集器在对堆进行回收之前,第一件事情就是要确定这些对象之中哪些还存活,哪些已经死亡(即不可能被任何途径使用的对象) ① 引用计数算法 💘 先放出结论,Java 虚拟机并不使用引用计数算法 ✍ 引用计数算法(Reference Counting) :为对象添加一个引用计数器,当对象增加一个引用时计数器加 1
  • 诗与远方
  • 2022年04月02日
  • 312 阅读
  • 0 评论
JAVA
2022-04-02
Java 内存区域与内存溢出异常 Java 内存区域与内存溢出异常 1. 概述 JVM 是 Java Virtual Machine 的缩写,它是一个虚构出来的计算机,一种规范。通过在实际的计算机上仿真模拟各类计算机功能实现··· 通俗来说 JVM 其实就类似于一台小电脑运行在 windows 或者 linux 这些操作系统环境下。它直接和操作系统进行交互,与硬件不直接交互,由操作系统帮我们完成和硬件进行交互的工作。 对于 C、C++ 来说,开发人员既拥有每一个对象的所有权,又担负着每一个对象生命开始到终结的维护责任。 对于 Java 来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个 new 操作去写相应的 del
  • 诗与远方
  • 2022年04月02日
  • 363 阅读
  • 0 评论
JAVA
2022-04-01
微服务介绍 微服务架构越来越流行,这个没有异议。2009 年,Netflix 重新定义了它的应用程序员的开发模型,这个算是微服务的首次探索。20014 年,《Microservices》,这篇文章以一个更加通俗易懂的方式,为大家定义了微服务。为什么要用微服务?互联网应用产品的两大特点: 需求变化快 用户群体庞大 在这样的情况下,我们需要构建一个能够灵活扩展,同时能够快速应对外部环境变化的一个应用,使用 传统的开发方式,显然无法满足需求。这个时候,微服务就登场了。 1.什么是微服务 简单来说,微服务就是一种将一个单一应用程序拆分为一组小型服务的方法,拆分完成后,每一个服务 都运行在独立的进程中
  • 诗与远方
  • 2022年04月01日
  • 371 阅读
  • 0 评论
JAVA
2022-04-01
springboot security 项目出现 in a frame because it set 'X-Frame-Options' to 'deny' springboot security 项目通过链接打开一个新的页面时,出现 in a frame because it set 'X-Frame-Options' to 'deny' 错误,如下图所示 //防止iframe @Configuration @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception {
  • 诗与远方
  • 2022年04月01日
  • 354 阅读
  • 0 评论
JAVA
2022-04-01
Spring Cloud Hoxton正式发布,SpringBoot2.2.x终于有伴了! 前言 距离Spring Boot 2.2.0的发布已经有一个半月左右时间,由于与之匹配的Spring Cloud版本一直没有Release,所以在这期间碰到的问题都是由于Spring Boot和Spring Cloud版本不匹配导致。 很多时候,我们在学习或重建系统的时候都喜欢直接选用最高版本来开发,但是在使用Spring全家桶的时候,这样的选择不一定是最佳选择。主要还是由于Spring全家桶中各项目之间还存在一定的依赖关系。尤其是在大版本迭代期间,是我们尤其要注意的。比如,这次Spring Framework、Spring Boot、Spring Cloud的升级,是一次整体的大版本的升级,
  • 诗与远方
  • 2022年04月01日
  • 386 阅读
  • 0 评论
JAVA
2022-04-01
Spring 漏洞(CVE-2022-22965) 官方说明,附修复方案 漏洞简述 3月31日,spring 官方通报了 Spring 相关框架存在远程代码执行漏洞,并在 5.3.18 和 5.2.20.RELEASE 中修复了该漏洞。漏洞评级: 严重影响组件:org.springframework:spring-beans影响版本:< 5.3.18 和 < 5.2.20.RELEASE 的Spring框架均存在该漏洞,建议用户尽快进行排查处置。 概述 我想宣布在 CVE 发布之前泄露的 Spring 框架中的一个 RCE 漏洞。该问题首先由 AntGroup FG 的 codeplutos, meizjm3i 于周二晚间,接近格林威治标准时间午夜时分向
  • 诗与远方
  • 2022年04月01日
  • 629 阅读
  • 0 评论
JAVA
2021-12-02
springboot 内存优化 参数配置 java -jar -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xms1024m -Xmx1024m -Xmn256m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC xxxxx-1.0.0.jar JVM参数字段解释: -XX:MetaspaceSize=128m (元空间默认大小) -XX:MaxMetaspaceSize=128m (元空间最大大小) -Xms1024m (堆最大大小) -Xmx1024m (堆默认大小) -Xmn256m (新生代大小) -Xs
  • 诗与远方
  • 2021年12月02日
  • 575 阅读
  • 0 评论
JAVA