自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 收藏
  • 关注

原创 学习123

**业务服务层 (Service)** | 实现业务逻辑 | `LoginService`(通过自己的 DAO 访问数据库) | `LeaseAgreementService`(不应该直接使用 LeaseTermService 的 DAO) || **数据访问层 (DAO)** | 直接操作数据库 | `SystemUserMapper`(属于 LoginService 自己的 DAO) | `LeaseTermMapper`(属于 LeaseTermService 的 DAO) |

2025-10-28 20:07:23 426

原创 匿名内部类

【代码】匿名内部类。

2025-05-29 10:34:17 131

原创 方法的参数与返回值

本文总结了方法参数和返回值的类型匹配规则:当参数为类时,需传入该类或其子类的对象;若参数为接口,则需传入该接口的实现类对象。返回值类型同理,类需返回该类或其子类对象,接口需返回实现类对象。这些规则确保了类型安全性和多态性在方法调用中的正确应用。

2025-05-29 10:33:09 149

原创 多态 向上转型

调用实际对象(右边)的方法实现。的具体实现来执行,这就是。

2025-05-28 21:25:27 237

原创 idea中的git的Update Project与Pull 的操作有什么区别

2025-05-23 20:57:30 237

原创 是不是只有Spring 容器管理的 Bean 才能使用注解? 还有什么是只有Spring 容器管理的 Bean 才能使用的?

2025-05-18 16:54:42 127

原创 RESTful API 设计的规范 黄金法则

2025-05-10 18:24:00 334

原创 public interface IBookServive extends IService<Book> { IBookServive继承到了IService<Book>中的方法 然后在publ

2025-05-10 17:54:32 100

原创 Controller Service Dao三个层 有什么关系

2025-05-10 17:53:32 216

原创 四层之一的Model 层

合理使用这些模型类,可以实现系统的**高内聚、低耦合**,提高代码的**可维护性、可测试性和可扩展性**。| **使用工具简化转换** | 如 MapStruct、ModelMapper,提高 DTO 与 Entity 的转换效率。| **分层清晰** | DTO、VO、BO 各司其职,避免将业务逻辑混入 DTO 或 VO。- **定义**:表示具有唯一标识(ID)的业务对象,通常包含**核心业务逻辑**。- **定义**:用于在不同层之间传输数据的对象,**不包含业务逻辑**。

2025-05-05 20:02:24 724

原创 多态应用场景

多态是面向对象编程(OOP)的三大核心特性之一(封装、继承、多态),其核心思想是**同一接口,不同实现**。// 输出:Paid by WechatPay: 200。| **解耦调用与实现** | 调用者只需关注接口/抽象类,无需关心具体实现。| **灵活性高** | 运行时可根据条件动态选择不同实现,提升系统灵活性。- **说明**:通过多态,系统可以在运行时根据配置选择日志记录方式,无需修改调用逻辑。- **说明**:通过多态,UI 组件可以适配不同操作系统,而上层代码无需关心具体实现。

2025-05-05 19:30:41 411

原创 抽象类与接口的使用场景对比(结合实际案例)

在 Java 中,**抽象类(Abstract Class)** 和 **接口(Interface)** 的设计目的不同,因此它们的使用场景也各有侧重。| **接口升级(兼容旧代码)** | 接口(默认方法) | Java 8+ 允许添加默认方法而不破坏已有实现 |- **说明**:`Human` 类同时实现了 `Swimmable` 和 `Runnable` 接口,表示它既会游泳又会跑步,体现了多继承的优势。

2025-05-05 19:26:31 895

原创 实现类是否需要重写接口的所有方法

**实现类类型** | | || **方法类型** | **是否需要重写** | **说明** || 默认方法(`default`)| 可选 | 可直接使用默认实现,也可自定义 |default void breathe() { // 默认方法(无需重写)

2025-05-02 17:49:47 428

原创 继承类是否需要实现被继承类的所有方法

**父类类型** | **是否需要实现所有方法** | **说明** |子类会**自动继承父类的所有非私有方法**,可以直接使用父类的方法实现,或选择性地重写(Override)部分方法。在面向对象编程中,**继承类是否需要实现被继承类的所有方法**,取决于被继承的父类的类型和方法的性质。如果父类包含抽象方法(没有具体实现的方法),子类**必须实现这些抽象方法**,除非子类自身也声明为抽象类。

2025-05-02 17:49:16 335

原创 Druid 数据源 德鲁伊

**功能** | **说明** | **对应你的代码场景** |Druid 的核心优势在于 **监控能力** 和 **防御功能**,而 Spring Boot 默认的 HikariCP 更轻量、性能更高。

2025-05-01 17:19:06 373

原创 面向接口编程(松耦合)

*核心原则**:**调用方(如Service、测试类)只依赖接口(`BookDao`),不关心具体实现类(`BookDaoImpl`)**。**优化方案**:设计接口时应尽量前瞻,或通过**默认方法**(Java 8+)或**抽象类**提供部分实现,减少对实现类的冲击。- **如何避免接口频繁修改**:通过**开闭原则**(对扩展开放,对修改关闭),通过新增接口或组合方式扩展功能。- **你的理解正确**:面向接口编程的核心是**通过接口隔离变化**,大部分情况下只需调整实现类,无需修改接口。

2025-05-01 08:27:13 1114

原创 @Configuration 注解的类

【代码】@Configuration 注解的类。

2025-04-28 23:09:35 322

原创 docker上部署redis(一主二从三哨兵)

这个命令的作用是启动一个名为iredis将主机的6381端口映射到容器的6381端口。使用自定义的配置文件。将主机上的数据目录挂载到容器的/data目录,以便持久化数据。以分离模式(后台)运行容器,使用 Redis 6.2.6 镜像。

2024-11-18 14:19:42 873

原创 设置交叉轴上的所有项目对齐方式

2024-10-28 17:12:39 155

原创 设置容器主轴方向与多行容器

2024-10-28 17:05:56 162

原创 创建flex容器与项目

时,它的所有直接子元素都会成为 Flex 项目,并遵循 Flexbox 布局规则。这意味着这些子元素的行为会受到父容器的 Flexbox 属性的影响。当子容器宽高超过父容器,子容器会自动适应父容器的宽高。

2024-10-28 11:54:21 176

原创 CSS Flexbox概念

2024-10-28 10:32:20 141

原创 媒体查询 @media 与 媒体类型()

CSS 提供了多种媒体类型,常见的媒体类型包括:::::

2024-10-27 23:25:31 344

原创 CSS 中 calc() 函数

是一个典型的用法,用于计算元素的宽度。这个表达式的含义是将元素的宽度设置为其父元素宽度的三分之一减去 20px。

2024-10-27 23:11:12 247

原创 定位机制详解

属性,可以将元素从其正常位置进行偏移,但其原本占据的空间仍然保留,不会影响其他元素的布局。希望这些解释和示例能帮助你更好地理解。的元素的正常位置是指它在文档流中的默认位置,即不应用任何定位属性时的位置。

2024-10-27 22:37:54 255

原创 CSS盒模型

每个HTML元素可以视为一个矩形盒子,内容、内边距、边框、外边距内容:元素实际内容的区域 content内边距:环绕内容区域的空白空间 padding边框:包裹在内边距外部的可见线条 border外边距:围绕在边框的透明区域 margin。

2024-10-27 21:52:06 230

原创 websocket协议

2024-10-26 23:47:54 136

原创 开发程序员必懂

2024-10-26 17:37:15 133

原创 vue3 - 父传子 子传父

2024-10-26 00:10:09 102

原创 vue3 - watch函数

复杂类型(如对象和数组)和简单类型(如字符串、数字、布尔值等)作用:侦听一个或者多个数据的变化,数据变化时执行回调函数导入watch函数执行watch函数传入要侦听的响应式数据(ref对象)和回调函数。

2024-10-25 23:43:32 452

原创 vue3 - computed计算属性函数

计算属性基本思想和Vue2的完全一致,组合式API下的计算属性只是修改了写法。2.执行函数在回调参数中return基于响应式数据做计算的值,用变量接收。计算属性应该是只读的,特殊情况可以配置getset。核心步骤: 1. 导入computed函数。比如异步请求/修改dom。1.计算属性中不应该有的操作。2.避免直接修改计算属性的值。

2024-10-25 13:31:59 246

原创 vue3 - reactive与ref (推荐:以后声明数据,统一用ref =>统一了编码规范)

在 Vue 3 中,响应式对象是通过reactive和ref函数创建的。这两个函数提供了不同的方式来创建响应式数据,每种方式都有其特定的使用场景和优缺点。下面详细介绍如何在 Vue 3 中创建和使用响应式对象。

2024-10-25 13:18:55 267

原创 vue3 - 组合式api

Vue 3 引入了组合式 API(Composition API),这是一种新的编写 Vue 组件的方式,旨在提高代码的可读性和可维护性。组合式 API 通过setup函数来组织和管理组件的逻辑,使得相关逻辑可以更好地组织在一起,而不是分散在不同的选项中(如datamethodscomputed等)。

2024-10-25 13:03:56 661

原创 @RequestMapping

是 Spring 框架中的一个注解,用于映射 Web 请求到特定的处理方法上。这个注解可以应用于类级别或方法级别,用于指定哪些 HTTP 请求应该由哪个控制器类或方法来处理。是一个非常灵活的注解,可以配合其他注解一起使用,以实现复杂的请求映射逻辑。

2024-10-21 22:53:18 220

原创 @Controller

是 Spring 框架中的一个注解,用于标记处理 Web 请求的类。它主要用于创建 Web 层的控制器类,这些类通常负责处理来自客户端的 HTTP 请求,并返回相应的视图或数据。是 Spring MVC 模块的一部分,它与视图层紧密相关。

2024-10-21 22:45:06 307

原创 @ResponseBody与@RestController

是 Spring 框架中的一个注解,,而不是作为视图名称来解析。这个注解通常用于 RESTful Web 服务,以返回 JSON、XML 或其他格式的数据给客户端。

2024-10-21 22:43:09 1025

原创 AOP用法 概念

AOP 是一种编程范式,它通过将横切关注点从业务逻辑中分离出来,提高了代码的模块化程度和可维护性。在 Java 中,Spring AOP 和 AspectJ 是两个广泛使用的 AOP 框架。通过合理应用 AOP,可以更好地组织和管理复杂的分布式系统。告诉Spring,以下通知何时何地运行?何时?@Before:方法执行之前运行。@AfterReturning:方法执行正常近回结果运行。@AfterThrowing.方法抛出异常运行。@After.方法执行之后运行何地@args。

2024-10-20 21:12:27 793

原创 活锁----

解决活锁:(在可能产生活锁的线程中增加一定的睡眠时间(sleep()),错开实行时间)

2024-10-19 12:11:34 214

原创 JWT令牌

客户端收到JWT令牌后,将其保存在本地。每次向服务器发送请求时,在请求的头部中携带该令牌,以便服务器对请求进行身份验证。服务器收到请求后,从请求头中提取JWT令牌,并进行解析和验证。如果令牌有效,则允许请求继续执行,否则返回错误信息。用户向服务器发送登录请求,服务器进行身份验证,如果验证成功则返回一个JWT令牌给客户端。

2024-10-18 17:01:25 355

原创 (苍穹外卖)完善登录功能

将存入数据库的密码进行加密处理(MD5加密方法(单向加密))获取到前端输入的密码后,使用加密方法,再于数据库中的密码比较。

2024-10-18 16:43:17 213

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除