- 博客(141)
- 收藏
- 关注
原创 数据库介绍
(Relational Database, RDBMS)是一种基于关系模型的数据库管理系统,它使用结构化查询语言(SQL)来管理数据。关系型数据库通过表(表格)来存储数据,每个表由行和列组成,数据之间通过关系(外键)进行连接。
2024-12-05 16:44:28
1327
原创 ssh -R使用
ssh -R是 SSH 命令中的另一种端口转发选项,表示它允许你将远程计算机的端口映射到本地计算机的端口。与ssh -L(本地端口转发)不同,ssh -R是将远程服务器上的某个端口转发到你本地的某个端口上,通常用于在远程机器上暴露本地服务或绕过防火墙等。ssh -R。
2024-11-29 14:52:48
760
原创 SSH 命令 -L 使用
ssh -L是 SSH 命令中的一个端口转发选项,用于将本地计算机的端口(本地端口)映射到远程计算机的端口(远程端口)。这种技术通常用于访问远程服务器上的某些服务,而这些服务可能被防火墙阻止,或者你想通过加密的 SSH 通道来保护数据传输。ssh -L。
2024-11-29 11:48:20
1740
原创 @EnableRetry、@Retryable、@Recover应用
以上配置将为方法提供重试机制。如果该方法在执行时抛出,将尝试重新执行最多 3 次,每次间隔 2 秒。如果所有尝试均失败,将调用@Recover方法处理失败逻辑。
2024-11-27 09:28:35
456
原创 @EnableRetry、@Retryable、@Recover 详解
是 Spring Retry 提供的核心注解,用于在 Spring 应用中轻松实现自动重试功能。,可以轻松实现自动重试和降级处理,增强系统的可靠性和容错性。
2024-11-27 09:26:12
644
原创 @WebService 详解
注解是构建 Java Web 服务的关键工具,能够简化 Web 服务的创建和配置过程。它适用于需要实现 SOAP Web 服务的场景,广泛应用于分布式系统、跨平台的系统通信中。通过该注解,可以灵活地定制 Web 服务的各种参数,如服务名称、命名空间、接口等。
2024-11-21 14:58:01
1533
原创 分布式和微服务的区别
分布式系统是一种处理多个计算机节点协同工作的架构设计,重点在于如何解决分布式计算和存储的问题。微服务架构是一种将单一应用拆分为多个独立服务的设计模式,目的是提高系统的灵活性和可维护性,属于分布式系统的实现之一。
2024-11-07 15:27:20
1163
原创 如何配置frp
通过上述步骤,您可以使用FRP将公司内网的服务暴露给外部访问,或者通过它从家庭网络访问公司内网资源。FRP灵活易用,适合搭建内网穿透服务。
2024-10-17 11:33:30
860
原创 @/ConfigurationProperties详解
提供了灵活、易用的方式来将配置文件中的内容映射到 Java 类中。它支持复杂的嵌套结构、列表、Map 类型,并且可以结合JSR-303校验注解进行数据验证。适用于处理复杂配置场景,并提高配置管理的安全性和可维护性。
2024-10-08 11:49:48
2178
原创 Mysql上实现物化视图的功能
在 MySQL 中,物化视图(Materialized View)并不像某些数据库(如 Oracle、PostgreSQL)那样作为一个内置特性存在。物化视图本质上是一个定期更新的视图,它的结果会存储在磁盘上,供后续查询使用,而不需要每次查询时重新计算数据。
2024-09-21 11:21:32
1555
原创 curl 的使用详解
curl是一个非常强大的命令行工具,用于通过各种协议(如 HTTP、HTTPS、FTP 等)传输数据。它广泛应用于测试 API、下载文件、调试网络请求等。下面是curl。
2024-09-16 11:10:47
2185
原创 mysql 触发器的使用以及利弊
*触发器(Trigger)**是在表的某些事件(如插入、更新、删除)发生时,自动执行的一段 SQL 语句。触发器在 MySQL 数据库中可以用于保证数据的一致性、自动处理一些复杂的逻辑等。触发器适合处理需要自动记录、同步或管理数据的场景。然而,由于其对性能和调试的影响,不建议在高负载的场景中频繁使用。触发器的业务逻辑应尽量保持简单、清晰,不应将复杂逻辑埋在触发器中。表,每次插入一条新订单时,需要在。
2024-09-14 16:00:42
744
1
原创 jackson 中常用注解说明
Jackson 是一个流行的 JSON 序列化和反序列化库,提供了丰富的注解来控制对象与 JSON 之间的转换过程。
2024-09-11 11:10:09
724
原创 @Async的使用说明
然后,在需要异步执行的方法上加上@Async注解。注意,异步方法需要返回void或Future类型(如// 模拟耗时操作 try {} System . out . println("异步方法执行完成");try {} return CompletableFuture . completedFuture("异步方法带返回值执行完成");} }// 模拟耗时操作 try {} System . out . println("异步方法执行完成");try {
2024-09-10 14:07:55
388
原创 TCP 三次握手和四次挥手
三次握手的核心目的是确保双向的同步:第一次握手:客户端发送SYN,告知服务器自己可以发送数据。第二次握手:服务器响应SYN-ACK,告知客户端它收到了请求,并且它也可以发送数据。第三次握手:客户端确认收到服务器的响应,确保连接的双向通信是可靠的。如果只有两次握手,服务器无法确认客户端是否收到了它的确认信息,可能导致不稳定的连接。
2024-09-10 09:40:56
779
原创 Java8 Stream流的基本使用
Java 8StreamAPI 提供了非常强大的声明式操作集合的方式。通过中间操作可以实现复杂的流水线式操作,终端操作则负责最终的结果计算。StreamAPI 简化了数据处理逻辑,特别是通过并行流可以提高性能,使得处理大数据集变得更加高效和直观。
2024-09-06 08:40:56
1137
原创 @Transactional 参数详解
事务是一种确保数据库操作要么全部成功,要么全部失败的机制,确保数据的一致性和完整性。: 事务超时时间,指定事务的超时时间(以秒为单位)。如果事务在指定的时间内没有完成,则会被强制回滚。如果抛出了这些异常类型中的任何一个,则事务不会回滚,即使。: 指定哪些异常类型会导致事务回滚。如果抛出了这些异常类型中的任何一个,则事务会被回滚。: 事务传播行为,指定事务的传播方式。: 事务隔离级别,指定事务的隔离级别。: 通过异常的类名指定哪些异常不会导致事务回滚。: 通过异常的类名指定哪些异常会导致事务回滚。
2024-09-05 18:44:45
930
原创 捕获异常的情况下仍然回滚事务
在 MyBatis-Plus 和 Spring 的事务管理机制中,事务的回滚行为与异常的传播有很大关系。如果你捕获了异常并且没有将它重新抛出,那么事务是不会回滚的。这是因为注解默认只在未捕获的异常向上传播到 Spring 的事务管理器时,才会触发回滚。捕获异常后,Spring 不再认为这个操作是失败的,事务将正常提交。
2024-09-05 15:57:06
1339
原创 linux 查看java 进程
是最常用的查看进程的命令。是 Java 自带的工具,用于列出当前用户下的所有 Java 进程。可以直接根据进程名查找 PID。键排序以查看占用 CPU 较多的进程。如果需要查看完整的命令行参数,可以使用。来查找 Java 进程及其 PID。是 Java 进程的 PID。键可以进行关键字过滤,如输入。这些命令会实时更新显示进程信息。命令查看系统的所有进程,按。相关的所有进程的 PID。
2024-09-05 10:18:39
3001
原创 Markdown 常用语法
请注意,使用 HTML 标签来更改样式可能不是所有 Markdown 渲染器都支持的,尤其是在受限的环境(如某些博客平台或 Markdown 编辑器)中。:一些 Markdown 渲染器(如 Markdown-it、Typora)支持插件或扩展语法,允许更复杂的样式设置。Markdown 本身不支持直接更改文本颜色,但可以使用一些扩展或通过 HTML 来实现。:对于支持 GFM 的平台,可以使用一些特殊语法(如不支持颜色设置)。:在 Markdown 中插入 HTML 标签来实现样式,例如使用。
2024-08-30 08:25:57
460
原创 springBoot 限制重复提交
首先,定义一个自定义注解,用于标记需要限制重复提交的接口。// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }Retention;// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }// 超时时间,单位毫秒 }Target;// 超时时间,单位毫秒在需要限制重复提交的接口上添加注解。
2024-08-29 19:30:16
527
原创 在日常编码与自我提升之间找到平衡的艺术
在编程世界中,技术不断更新迭代,项目要求日益复杂,程序员面临着双重压力:一方面是完成日常编码任务的高效需求,另一方面是不断学习新技术、深化专业知识的个人成长需求。如何在繁忙的工作中找到自我提升的时间?这似乎成了每个程序员都需要面对的难题。其实,在高效工作和自我提升之间,我们可以找到一个平衡点,让二者相辅相成,互利共赢。
2024-08-28 08:51:24
436
原创 在 Java 中使用泛型时遇到的问题,,无法正确将响应数据映射为需要的数据
创建一个 ParameterizedTypeReference 的子类:在实际调用时明确指定泛型类型 T。使用 TypeFactory 提供准确的类型信息:确保 Jackson 能获取正确的类型信息。// 使用 TypeFactory 创建泛型类型uri,
2024-08-27 18:50:04
377
原创 Quartz CronTrigger用法
是 Quartz Scheduler 中的一种触发器,它使用 Cron 表达式来定义复杂的调度计划。Cron 表达式允许你定义基于特定时间表的任务调度,例如每天的某个时间、每周的某几天等。下面是关于的基本用法说明。
2024-08-13 15:02:23
490
原创 Quartz SimpleTrigger 用法
是 Quartz Scheduler 中的一种触发器,它用于定义一个简单的定时任务。与不同,更适合用于那些基于固定间隔的任务调度。下面是一些关于的基本用法说明。
2024-08-13 14:59:15
615
原创 FactoryBean和BeanFactory区别
是一个接口,允许用户自定义 bean 的创建过程,可以返回与类型不同的对象。是 Spring IoC 容器的基础接口,负责管理和创建 Spring 应用中的所有 bean。主要用于自定义 bean 的创建,而是管理和注入 bean 的核心容器接口。
2024-08-12 15:25:31
411
原创 SpringBoot Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported
当你在 Spring Boot 应用中看到错误时,通常意味着服务器期望接收的请求内容类型与客户端发送的不一致。通常在 RESTful API 场景下,服务器可能期望接收或其他内容类型,但客户端发送了类型的数据。
2024-08-12 09:05:37
2536
1
原创 Spring循环依赖解决方法及原理
Spring通过三级缓存机制(一级缓存、二级缓存和三级缓存)解决循环依赖问题。这种机制允许Spring在Bean尚未完全初始化之前,提前暴露Bean引用,从而打破循环依赖的环。这种设计既保证了Bean的依赖注入,又避免了循环依赖导致的死锁问题。
2024-08-05 10:27:20
475
原创 设计模式的类别
这些模式关注于如何创建对象。它们通过提供一个创建对象的机制,来隐藏对象创建的复杂性。:这些模式关注于如何将类和对象组合成更大的结构,以便它们能够更高效地工作。这些模式可以帮助解决常见的设计问题,使系统更灵活、更可维护。:这些模式关注于对象之间的交互和职责的分配。
2024-08-02 06:15:00
335
TA创建的收藏夹 TA关注的收藏夹
TA关注的人