![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java开发
文章平均质量分 58
不可大东
这个作者很懒,什么都没留下…
展开
-
什么是java agent探针技术,以及如何使用
Java Agent探针技术是一种能够动态修改Java字节码的技术,常用于程序调试、热部署、性能诊断分析等场景。它通过在应用程序运行时动态加载代理程序(agent),获取应用程序的运行状态、性能指标、异常信息等数据,帮助开发人员诊断和解决问题。Java Agent探针可以捕获和分析程序运行时的错误和异常信息,以及检查线程是否阻塞等问题。它是一种Java字节码增强技术,允许在Java应用程序运行时动态地修改应用程序的字节码,以实现一些特定的功能。原创 2023-06-15 10:31:50 · 2446 阅读 · 0 评论 -
spring-retry组件的使用
Spring Retry是一个开源的Java库,用于处理可能会失败的方法调用,并提供了一种重试机制。当方法调用失败时,Spring Retry允许您指定重试的策略,例如重试次数、重试间隔等。Spring Retry的主要目的是为了提高系统的可靠性和容错性。当方法调用失败时,Spring Retry可以在不影响系统性能的情况下,自动进行重试,从而减少故障对系统的影响。Spring Retry支持多种重试策略,包括固定时间间隔、固定重试次数、指数退避等。原创 2023-06-01 11:14:23 · 569 阅读 · 0 评论 -
为什么mysql使用的是B+树而nosql类型的数据库大多数使用的是LSM树
而大多数NoSQL类型的数据库使用LSM树的原因是因为它们通常面对的是OLAP场景,需要支持高吞吐量的写入操作和大规模数据的批量读取操作。MySQL使用B+树作为其默认的索引结构,因为B+树在某些方面比LSM树更适合作为默认的索引结构。B+树的查询和更新速度相对较快,而且它的写入操作通常是基于内存的。因此,LSM树在处理大量数据时比B+树更快。由于 NoSQL 数据库通常需要频繁进行写入操作,而传统的 B+树 在面对大量写入操作时会出现性能瓶颈,因此 LSM Tree 能够更好地处理这种情况。原创 2023-05-24 09:47:14 · 710 阅读 · 0 评论 -
什么是读扩散和写扩散
写扩散是指在分布式系统中,由于数据的复制和缓存等原因,当一条数据被更新后,需要将该数据的更新操作同步到多个节点中的副本,以保证数据的一致性。读扩散是指在分布式系统中,由于数据的复制和缓存等原因,当一条数据被更新后,在多个节点中都存在该数据的副本,这时候其他节点请求该数据时,可能会读取到过期的数据,因为该节点上的数据还未被更新。因此,读扩散就是指一条数据在更新后,由于分布式系统中数据的复制和缓存等原因,可能会导致其他节点上的数据过期,读取到过期数据的现象。原创 2023-04-20 14:20:30 · 1617 阅读 · 0 评论 -
后端如何转义html,js脚本,防止xss攻击
具体来说,escapedString变量中包含了HTML转义字符编码,如"原创 2023-04-19 17:47:41 · 670 阅读 · 0 评论 -
LocalDateTime时间处理工具类
LocalDateTime是Java 8引入的日期时间类,表示一个不带时区的日期时间,包含年、月、日、小时、分钟、秒和毫秒等信息。主要应用于需要处理不带时区的日期时间的场景,如日志记录、时间计算、定时任务等。of():根据指定的年、月、日、小时、分钟、秒等信息创建LocalDateTime实例。minusXXX():在日期时间上减少指定的年、月、日、小时、分钟、秒或毫秒。plusXXX():在日期时间上增加指定的年、月、日、小时、分钟、秒或毫秒。这段代码是一个工具类,用来进行日期时间的转换和格式化。原创 2023-04-19 15:29:04 · 422 阅读 · 0 评论 -
@SentinelResource是代表什么意思
总之,@SentinelResource注解是Sentinel框架中非常重要的一个组件,它为我们提供了一种简洁、易于理解和管理的方式来进行流量控制和限流。@SentinelResource是一个注解,它表示一个方法或者类是 Sentinel 保护的资源,需要进行流量控制、熔断降级等限流措施。public String bonjour(String name):一个简单的方法,返回字符串"Bonjour, "和传入的"name"参数拼接而成的字符串。当该资源受到限流或降级时,将会触发相应的处理策略。原创 2023-04-19 14:58:21 · 621 阅读 · 0 评论 -
什么是数据库的脏读,不可重复读,幻读?
另外,也可以使用“快照隔离”级别来解决不可重复读的问题,该级别会在事务开始时对所有数据进行快照,事务期间读取的数据都是从快照中读取,不会受到其他事务的修改影响。这就是不可重复读的问题。A事务先查询了某个账户的余额,然后在查询结束之前,B事务插入了一条新的记录,导致A事务在第二次查询时发现了新的余额记录,与第一次查询的结果不一致,这就是幻读。**举例:**假设有两个事务A和B,事务A要更新某个数据并执行提交操作,但是事务B在事务A提交之前读取了该数据,此时事务B读取到了未提交的数据,即脏数据。原创 2023-04-18 14:26:33 · 1093 阅读 · 0 评论 -
使用springboot解释什么是jwt
JWT全称为JSON Web Token,是一种基于JSON格式的轻量级的身份认证和授权机制。它由三部分组成,分别是头部(Header)、载荷(Payload)和签名(Signature),通常使用点号(.)将这三部分连接起来形成一个字符串。其中,头部通常包含加密算法和token类型等信息,载荷通常包含用户信息和权限等数据,签名则是对头部和载荷的加密结果。JWT常用于Web应用的身份认证和授权,客户端通过在请求头中携带JWT向服务器进行身份验证并获取资源。原创 2023-04-15 10:12:52 · 324 阅读 · 0 评论 -
使用java实现雪花算法
雪花算法(Snowflake)是Twitter开源的分布式ID生成算法,可以生成全局唯一且有序的ID,适用于分布式系统中的ID生成。它的核心思想是,将一个64位的二进制数拆分成多个部分,分别表示时间戳、数据中心ID、机器ID和序列号,通过对时间戳、数据中心ID、机器ID和序列号进行位运算和组合,生成一个唯一的64位ID。其中,符号位固定为0,时间戳表示生成ID的时间,精确到毫秒级别,可以使用69年;数据中心ID和机器ID用于区分不同的数据中心和机器,最多可以支持32个数据中心和32台机器;原创 2023-04-11 15:23:58 · 1075 阅读 · 0 评论 -
mysqldump的使用
其中,dbname为要备份的MySQL数据库名称,backup.sql为备份文件名。执行以上命令后,将会备份整个MySQL数据库到backup.sql文件中。1.连接MySQL数据库,在使用mysqldump备份数据库之前,需要先连接到MySQL数据库。其中,dbname为要还原的MySQL数据库名称,backup.sql为备份文件名。执行以上命令后,将会备份指定的数据表结构到backup.sql文件中。mysqldump是MySQL自带的备份工具,可以用于备份MySQL数据库。5.还原MySQL数据库。原创 2023-04-11 11:42:23 · 2440 阅读 · 0 评论 -
一文带你搞懂Java动态代理
动态代理是一种常用的Java代理模式,它能够在运行时动态地生成代理类,实现对目标对象的代理访问和控制。相比静态代理,动态代理具有更高的灵活性和可扩展性,能够适应更多的场景和需求。在Java中,动态代理主要通过Java反射机制来实现,通常需要实现一个代理类的接口,并提供一个InvocationHandler接口的实现类来处理代理对象的方法调用。在代理对象方法调用时,InvocationHandler实现类会自动调用invoke()方法,通过反射机制调用目标对象的方法,并在必要时添加额外的逻辑处理。原创 2023-03-27 17:34:55 · 578 阅读 · 0 评论 -
OBS对象储存上传大文件和大视频多段访问处理的方法
OBS对象储存上传大文件处理方法。原创 2023-03-14 15:15:15 · 442 阅读 · 0 评论 -
Java8函数式编程语法入门
Java8函数式编程语法入门Java8中函数式编程语法能够精简代码。使用Consumer作为示例,它是一个函数式接口,包含一个抽象方法accept,这个方法只有输入而无输出。现在我们要定义一个Consumer对象,传统的方式是这样定义的:Consumer c = new Consumer() { @Override public void accept(Object o) { System.out.println(o); }};而在Java8中,针对函数原创 2022-03-02 18:53:18 · 182 阅读 · 0 评论 -
从一个bean包到另一个bean包的copy
private static void copyProperties(Object source, Object target, @Nullable Class<?> editable, @Nullable String... ignoreProperties) throws BeansException { Assert.notNull(source, "Source must not be null"); Assert.notNull(target, "Target must原创 2022-03-02 18:46:01 · 104 阅读 · 0 评论