- 博客(28)
- 收藏
- 关注
原创 解决异常(JDK21) java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree
报错:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'原因:更新lombok的version为1.18.30版本。
2024-10-17 11:40:42 148
原创 菜鸟入门Docker
Docker是基于Go语言实现的云开源项目。Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运行环境能够做到“一次镜像,处处运行”。
2024-09-06 10:10:40 4102
原创 微服务架构-SpringCloud(二)
Spring Cloud Gateway是Spring公司基于Spring 5.0,Spring Boot 2.0 和 Project Reactor 等术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。它的目标是替代 Netflix Zuul,其不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全,监控和限流。l 性能强劲:是第一代网关Zuul的1.6倍l 功能强大:内置了很多实用的功能,例如转发、监控、限流等l 设计优雅,容易扩展.
2024-08-09 08:36:12 902
原创 微服务架构-SpringCloud
什么是Ribbon是 Netflix 发布的一个负载均衡器,有助于控制 HTTP 和 TCP客户端行为。在 SpringCloud 中, nacos一般配合Ribbon进行使用,Ribbon提供了客户端负载均衡的功能,Ribbon利用从nacos中读 取到的服务信息,在调用服务节点提供的服务时,会合理(策略)的进行负载。在SpringCloud中可以将注册中心和Ribbon配合使用,Ribbon自动的从注册中心中获取服务提供者的 列表信息,并基于内置的负载均衡算法,请求服务。
2024-08-08 08:00:00 1191
原创 vue前端项目--路由vue-router
早期的网站开发中,服务器负责生成完整的 HTML 页面,并将其发送给客户端展示。每个 URL 对应一个特定的控制器(Controller),该控制器负责处理请求并生成相应的 HTML 内容。这种方式有利于搜索引擎优化(SEO),因为搜索引擎可以轻松抓取完整的 HTML 内容。缺点是页面更新时需要重新加载整个页面,导致用户体验不佳,且 HTML 和业务逻辑混杂在一起,难以维护。随着 Ajax 技术的出现,前后端分离成为可能。
2024-08-07 18:30:37 954
原创 Vue前端实战教程:环境搭建+组件化开发+组件通信
结构 (有且只能一个根元素)script: js逻辑style: 样式 (可支持less,需要装包)让组件支持lessstyle标签,lang="less" 开启less功能装包: yarn add less less-loader -D 或者npm i less less-loader -D。
2024-08-06 08:00:00 1319
原创 SpringSecurity + JWT实战(前后端分离)
先来聊一聊什么是SpringSecurity ,在上一篇文章中已经聊过了,大家可以去看看接下来我们聊聊什么是JWTJson web token (JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC7519).该token被设计为紧凑且的,特别适用于。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。
2024-08-05 19:09:24 2398
原创 Spring Security 详解
用户认证通过后,为了避免用户的每次操作都进行认证可将用户的信息保证在会话中。会话就是系统为了保持当前用户的登录状态所提供的机制,常见的有基于session方式、基于token方式等。
2024-07-31 19:37:41 6290
原创 Redis实战---分布式锁
分布式锁,顾名思义,就是分布式系统中使用的锁,在单体应用中我们使用synchronized、ReentrantLock来解决线程时间的共享资源的访问问题,而在分布式系统中,资源贡献问题已经由线程之间的竞争演变到了进程之间的竞争,分布式锁就是接近分布式系统中多进程之间的共享资源的访问问题。
2024-07-26 17:15:48 688
原创 SpringBoot整合阿里云短信业务
首先,你需要注册一个阿里云账号(如果还没有),然后在控制台中创建Access Key。这个Access Key将用于通过API调用。在Spring Boot项目中,你需要添加阿里云短信服务、Redis的依赖、还有mybatis-plus。在控制台中创建Access Key非常简单,只需遵循阿里云的步骤即可。
2024-07-25 09:43:34 1323
原创 Redis的集群模式
在这种模式下,数据在主节点(Master)上进行写操作,然后异步复制到一个或多个从节点(Slave)。主节点负责数据的持久化和写入操作,从节点则提供读操作,实现读写分离,提高系统的读取性能。主从模式适合于数据量不是特别大,且对高可用性要求不是特别高的场景。缺点是当主节点发生故障时,需要手动进行故障转移,这可能导致短暂的服务中断。哨兵模式是主从模式的扩展,通过哨兵(Sentinel)进程来监控主节点的状态。哨兵可以自动检测主节点的故障,并在主节点不可用时自动进行故障转移,将一个从节点提升为新的主节点。
2024-07-23 21:15:03 1469
原创 Redis超详细入门教程
Redis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。Redis提供数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。Redis具有内置的复制[集群],Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性[磁盘],并通过Redis Sentinel和Redis Cluster自动分区提供了高可用性【集群】。
2024-07-23 10:26:58 1018
原创 云服务器部署SSM项目(前后端不分离)
以华为云为例:免费云服务器_试用_云服务器免费_低价云虚拟主机VPS_个人免费云服务器-华为云 (huaweicloud.com)购买完成下以后,默认是开机,需要关机重置一下密码,才能进行运程连接.
2024-07-20 10:57:28 1386
原创 Nginx的HA高可用的搭建
高可用(High Availability, HA)是一种系统设计策略,旨在确保服务或应用在面对硬件故障、软件缺陷或任何其他异常情况时,仍能持续稳定地运行。它通过实现冗余性、故障转移、负载均衡、数据一致性、监控自动化、预防性维护、灾难恢复计划以及服务级别协议等关键要素,来减少服务中断时间,提升服务的可靠性和稳定性。
2024-07-19 17:40:50 1323 2
原创 Nginx详解(超级详细)
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。并发能力: 50,000。
2024-07-18 21:32:02 4588
原创 Linux介绍以及常用命令
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。
2024-07-16 11:09:20 996
原创 SpringBoot整合MybatisPlus(详细版)
MybatisPlus是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。它继承了 MyBatis 的所有特性,并且加入了强大的功能,例如自动填充、逻辑删除、乐观锁、性能分析等。
2024-07-13 11:08:32 8678
原创 SpringBoot整合Swagger2+定时器
Swagger 2是一种用于描述RESTful API的规范,它通过JSON格式标准化API的定义,支持自动生成API文档、代码框架,提供交互式测试工具,并允许API版本控制和安全方案的集成,从而提高开发效率和API的可用性。
2024-07-12 21:19:33 1432
原创 【SpringBoot框架】-- 快速入门
Spring框架是一个开源的Java应用框架,以其轻量级、非侵入性、控制反转和依赖注入、面向切面编程等特性著称。它简化了Java应用开发,提供了强大的基础设施支持和丰富的功能集合,使开发者能够更专注于业务逻辑的实现,从而提升了开发效率和代码质量。
2024-07-11 21:26:59 1431
原创 Java设计模式 ---(二)
适配器模式(Adapter Pattern)包括类适配器模式和对象适配器模式两种主要形式。类适配器模式通过继承实现适配器功能,将一个类的接口转换成客户端所期望的另一个接口;而对象适配器模式则通过组合实现适配器功能,持有适配者的实例来实现接口转换。类适配器模式对于需要重定义适配者行为的情况适用,但对象适配器模式更灵活且符合合成复用原则,通常推荐使用。对其他对象提供一种代理以控制对这个对象的访问。代理的作用代理模式的主要作用是为其他对象提供一种代理以控制对这个对象的访问。
2024-07-10 20:49:40 1583
原创 Java设计模式 ---(一)
工厂模式将目的将创建对象的具体过程屏蔽隔离起来,从而达到更高的灵活性,工厂模式可以分为三类:简单工厂模式(Simple Factory)工厂方法模式(Factory Method)抽象工厂模式(Abstract Factory)我们在了解工厂模式时,先从现实生活说起:(1)在没有工厂的时代,如果客户需要一款宝马车,那么就需要客户去创建一款宝马车,然后拿来用。(2)简单工厂模式:后来出现了工厂,用户不再需要去创建宝马车,由工厂进行创建,想要什么车,直接通过工厂创建就可以了。
2024-07-09 20:41:18 2025
原创 【JDK8】新特性(二)
注意:stream和I0流(lnputstream/0utputstream)没有任何关系,请暂时忘记对传统I0流的固有印象!Stream流式思想类似于工厂车间的"生产流水线",Stream流不是一种数据结构,不保存数据,而是对数据进行加工处理。Stream可以看作是流水线上的一个工序。在流水线上,通过多个工序让一个原材料加工成一个商品。Stream不存在数据,只对数据进行加工处理。
2024-07-09 10:06:47 726
原创 【JDK8】新特性(一)
Lambda引入了新的操作符:->(箭头操作符),->将表达式分成两部分左侧:(参数1,参数2…)表示参数列表右侧:{}内部是方法体注意事项形参列表的数据类型会自动推断如果形参列表为空,只需保留()如果形参只有1个,()可以省略,只需要参数的名称即可如果执行语句只有一句,且无返回值,{}可以省略,若有返回值,则若想省去{},则必须同时省略return,且执行语句也保证只有一句Lambda不会生成一个单独的内部类文件。
2024-07-06 10:58:49 1065
原创 【Java基础】--线程(二)
线程不安全的问题主要出现在多线程环境中,当一个或多个线程在没有适当同步的情况下,同时访问共享资源或数据时,就可能引发线程不安全的问题。这是因为每个线程都有自己的执行路径和速度,它们可能同时读写同一个变量或对象的状态,导致数据的不一致或不可预测的行为。
2024-07-04 20:26:15 1134
原创 【Java基础】--线程(包含面试题)
简单的来说,进程是指在系统中正在运行的一个应用程序,每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存。线程,又称轻量级进程(Light Weight Process)。线程是进程中的一条执行路径,也是CPU的基本调度单位。若一个程序可同一时间执行多个线程,就是支持多线程的.一个进程由一个或多个线程组成,彼此间完成不同的工作(任务),同时执行,称为多线程。1. 什么线程和进程?2. 创建线程的方式?3. Thread类中常用的方法。
2024-07-03 19:58:02 600
原创 【Java基础】——手撕ORM框架(泛型+注解+反射)
TableName:表明和实体类名不一致时使用TableField:列名和属性名不一致时使用TableId:列名和属性名不一致时使用/*** 定义一个字段级别的注解,用于标记实体类中的字段对应数据库表中的列名。* @Target(ElementType.FIELD) 表示该注解只能用于字段上。* @Retention(RetentionPolicy.RUNTIME) 表示该注解在运行时仍然有效,可被反射访问。*//*** 返回数据库表中对应的列名。* @return 列名字符串。*/
2024-07-02 19:38:09 495 4
原创 【Java基础】——反射
反射是指在程序运行时能够访问、检查和修改自身状态或行为的能力。通过反射,程序可以动态地获取类的信息、调用类的方法,并修改类的属性。再简单点来说,反射就是类在运行期间,把类中成员抽取为其他类的过程就是反射。
2024-07-01 19:36:17 1093
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人