自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue3逻辑复用及内置组件

Vue3的逻辑复用主要通过“组合式函数”、“自定义指令”及“插件”来实现。提高了代码复用性,增强代码可维护性及促进团队合作。

2024-07-21 09:04:51 458

原创 Vue3 深入组件

Vue 的组件系统允许我们使用小型、独立和可复用的组件构件大型应用。Vue3 引入了语法糖,使得组件的options(如data,methods等)会自动从setup函数的返回中导出,无须通过return暴露它们,提高了开发效率。

2024-07-18 18:57:06 346

原创 Vue3 基础

Vue3 在Vue2 的基础上做了许多的改进,主要有以下方面:1)性能提升,Vue3 对虚拟DOM进行了重写,引入了静态树和新的编译器。提高了渲染性能。2)响应式系统的改进,使用Proxy代理对象替代了Vue2中的Object.defineProperty。3)更好的TypeScript支持。

2024-07-16 18:28:05 310

原创 Vue3响应系统的作用与实现

副作用函数的执行会直接或间接影响其他函数的执行。一个副作用函数中读取了某个对象的属性,当该属性的值发生改变后,副作用函数自动重新执行,这个对象就是响应式数据。

2024-07-10 23:25:53 998 1

原创 【再探】Java—Java 沙箱机制与类加载器

沙箱(Sandbox)机制是将Java程序限定在JVM特定的运行范围内,并严格限制代码对本地系统资源的访问,以保证代码的有效隔离,防止对本地系统造成破坏。

2024-06-06 21:49:56 884

原创 【再探】Java—HashMap原理

HashMap 不是线程安全的。底层实现的数据结构是:数组 + 链表 + 红黑树。当根据key 来获取键值时,根据key 的哈希值来快速定位其在数组中的位置,然后再在这个元素中的链条(或红黑树)中进行查找。HashMap 会自动扩展,但不会收缩。

2024-06-05 01:21:30 824

原创 【再探】设计模式—备忘录模式与解释器模式

备忘录模式是用于保存对象在某个时刻的状态,来实现撤销操作。而解释器模式则是将文本按照定义的文法规则解析成对应的命令。

2024-06-03 00:37:39 579

原创 【再探】设计模式—访问者模式、策略模式及状态模式

访问者模式是用于访问复杂数据结构的元素,对不同的元素执行不同的操作。策略模式是对于具有多种实现的算法,在运行过程中可动态选择使用哪种具体的实现。状态模式是用于具有不同状态的对象,状态之间可以转换,且不同状态下对象的行为不同,客户端可以不必考虑其状态及转换,对所有的状态都可以执行同一的操作。

2024-05-31 23:00:14 1081

原创 【再探】设计模式—中介者模式、观察者模式及模板方法模式

中介者模式让多对多的复杂引用关系变成一对多,同时能通过中间类来封装多个类中的行为,观察者模式在目标状态更新时能自动通知给订阅者,模版方法模式则是控制方法的执行顺序,子类在不改变算法的结构基础上可以扩展功能实现。

2024-05-30 22:04:56 963

原创 【再探】设计模式—职责链模式、命令模式及迭代器模式

行为型设计模式研究系统在运行时对象之间的交互,进一步明确对象的职责。有职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式及访问模式共11种。

2024-05-27 12:05:37 650

原创 【再探】Java—泛型

Java 泛型本质是参数化类型,可以用在类、接口和方法的创建中。

2024-05-24 01:20:02 899

原创 【再探】设计模式—代理模式

增加一个代理对象,在客户端和目标对象之间起到中介作用,去掉客户不能看到的内容和服务,或者添加客户想要的额外服务。

2024-05-21 23:46:56 973

原创 【再探】设计模式—桥接模式、组合模式及享元模式

结构型设计模式描述了对象与类之间的关系。适配器模式及装饰器模式主要用于接口适配及功能增强,而桥接模式模式则是为了减少类的数量,组合模式让部分与容器能被客户端统一对待处理,享元模式则是用于节约系统内存,提高系统性能。

2024-05-16 03:11:27 765

原创 【再探】设计模式—适配器、装饰及外观模式

结构型设计模式是用于设计对象和类之间关系的一组设计模式。一共有7种:适配器模式、装饰器模式、外观模式、桥接模式、组合模式、享元模式及代理模式。

2024-05-07 18:28:33 581

原创 【再探】设计模式—抽象工厂及建造者模式

抽象工厂模式和建造者模式都属于创建型模式。两者都能创建对应的对象,而创建者模式更侧重于创建复杂对象,将对象的创建过程封装起来,让客户端不需要知道对象的内部细节。

2024-04-30 20:24:36 855 1

原创 【再探】设计模式— 工厂方法、单例及原型模式

创建型设计模式是处理对象创建的设计模式,主要特点是“将对象的创建与业务代码分离”。一共有五种:工厂方法模式、单例模式、原型模式、抽象工厂模式及建造者模式。

2024-04-29 21:40:23 878

原创 【再探】Java — 面向对象编程特性与内部类

封装、继承、多态及抽象是面向编程的四大特性。

2024-04-24 22:18:04 441

原创 【再探】设计模式-设计原则

设计原则是在编写程序时引导程序员遵循的一些原则和准则。这些原则旨在提高代码的可读性、可维护性、可扩展性和可重用性。

2024-04-21 01:28:48 1072

原创 mybatis 入门

MyBatis是一款持久层框架,免除了几乎所有的JDBC代码、参数及获取结果集工作。可以通过简单的XML或注解来配置和映射原始类型、接口和Java POJO为数据库中的记录。

2024-04-15 21:26:51 911

原创 Spring Boot(二)— 自定义Spring Boot Starter

在Spring Boot中,自定义Spring Boot Starter是一个常见且强大的功能,它允许开发者为特定的功能或库创建自己的自动配置,从而简化集成过程。

2024-04-14 14:41:40 1050

原创 Spring Boot(一)— Maven

Maven是一个跨平台的项目管理工具,主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。通过其项目对象模型(POM),可以自动下载和管理项目所需的库和插件。

2024-03-28 22:33:39 1771 1

原创 Spring MVC(四)— CORS、HTTP缓存及MVC配置

Spring CORS 允许开发者配置哪些域可以访问其Web应用的资源。HTTP缓存是提高Web应用程序性能的一种重要技术。通过实现WebMvcConfigurer接口来对MVC容器进行配置。

2024-03-25 18:42:23 713

原创 Spring MVC(三)- 处理器与注解

Spring MVC 用@Controller及@RestController 注解来标志(自动扫描并注册成bean)该类是一个控制器容器类,在该类下,使用@RequestMapping及其扩展注解来定义处理器。使用注解,可以定义请求的映射、请求的输入、异常处理等。

2024-03-22 12:17:40 781

原创 Spring MVC(二)-过滤器与拦截器

过滤器和拦截器在职责和使用场景上存在一些差异。

2024-03-20 19:07:21 1033

原创 Spring MVC(一)— DispatcherServlet

DispatcherServlet 是Spring MVC框架的HTTP 请求处理器的中央调度器。它具有以下的功能:1)基于IoC容器JavaBean配置机制。2)使用HandlerMappingl来实现请求到处理器的路由映射。3)使用HandlerAdapter 来处理不同的处理器。4)处理器抛出的异常解决策略由HandlerExceptionResolver指定。5)视图解析策略可以通过ViewResolver实现指定。6)文件上传策略通过MultipartResolver来确

2024-03-15 02:46:18 947

原创 Spring AOP(二) — 底层组件

Spring AOP 是通过动态代理的方式来实现,主要是通过Pointcut、Advice、Advisor及ProxyFactoryBean 等接口来创建代理对象。在IoC容器中,Advice 是一个bean(这样可以在通知中使用其他的bean),而Pointcut虽然不是一个Bean,但是它所在的Aspect(切面)是一个bean。推荐Spring AOP在IoC容器中通过@AspectJ注解的形式来使用。

2024-03-07 00:45:17 936

原创 Spring AOP(一) — 基础语法及原理

Spring AOP 是Spring中用于实现面向切面编程的一个模块。它运行开发者定义横切关注点,这些关注点会跨越多个模块、类或方法。通过AOP,开发者可以将这些横切关注点从业务逻辑中分离出来,使代码更加清晰、可维护,并降低模块间的耦合度。

2024-03-05 18:57:20 944

原创 Spring Expression Language (SpEL)

Spring 表达语言(SpEL),支持在运行时查询和操作对象图,可以用于数据绑定、属性访问、方法调用等。使用SpEL可以简化代码并提高应用程序的可维护性。

2024-02-29 23:36:33 1024

原创 Spring 类型转换、数值绑定与验证(三)— Formatting 与 Validation

Formatting,在Spring中用于格式化数据及根据地域展示不同格式的数据。org.springframework.validation.Validator 是用来验证对象实例属性的接口。JSR 303(Bean Validation) 规范定义了一套用于JavaBean参数校验的标准。javax.validation.Validator 也是用于对指定的对象进行校验。

2024-02-28 20:37:06 771

原创 Spring 类型转换、数值绑定与验证(二)—PropertyEditor与Conversion

Spring 中,属性类型转换是在将数值绑定到目标对象时完成的。例如在创建ApplicationContext 容器时,将XML配置的bean 转换成Java类型对象,主要是借助了PropertyEditor类,而在Spring MVC 的Controller的请求参数转化为特定类型时,我们也可以自定义转化器Convert并注册来完成转换。以下是Spring相关源码分析。

2024-02-22 20:27:17 1002

原创 Spring 类型转换、数值绑定与验证(一)— DataBinder

DataBinder 是Spring用于数据绑定、类型转换及验证的类。使用场景有:1)xml配置文件定义bean,Spring 内部使用DataBinder 来完成属性的绑定;2)Web请求参数绑定,在Spring MVC 中,Controller的方法参数通常会自动绑定到请求参数中,主要用DataBinder来完成。3)自定义数据绑定,可手动创建DataBinder 对象,为其设置校验器和转换器,来满足特定需求。

2024-02-21 19:50:09 1134

原创 Spring Resource

java.net.URL 类可用于访问带有各种URL前缀的资源,但是对于访问一些资源还是不够方便。比如不能从类路径或者相对于ServletContext来获取资源。而Spring 的Resource接口,则可以通过类路径等方式来访问资源。

2024-02-16 17:47:47 933

原创 Spring IoC容器(四)容器、环境配置及附加功能

本文内容包括容器的@Bean 及 @Configuration 注解的使用、容器环境的配置文件及容器的附加功能(包括国际化消息、事件发布与监听)。

2024-02-07 18:31:53 1075 1

原创 Spring IoC容器(三)注解

Spring 除了支持通过XML形式配置Bean外,也支持通过注解的形式来配置Bean。需要简洁、易于维护和低耦合度场景下,注解是更好的选择;需要可读性强、可扩展性和分离关注点的场景下,XML是一个更好的选择。

2024-02-05 20:35:35 884

原创 Spring IoC容器(二)Bean的自定义及容器的扩展

Spring提供了一些接口来让我们定制bean 及扩展容器。

2024-02-03 23:33:09 948

原创 MySQL EXPLAIN查询执行计划

EXPLAIN 可用来查看SQL执行计划,常用来分析调试SQL语句,来使SQL语句达到更好的性能。

2024-02-02 22:06:10 1023

原创 Spring IoC容器(一)

IoC,Inversion of Control 控制反转,是一个过程。仅通过构造函数、工厂方法或在对象实例化后在对象实例上设置属性来定义其依赖关系。容器负责这些工作,这个过程从本质上来说是bean本身的反向,因此称为反向控制。

2024-01-29 22:14:07 894

原创 AspectJ语法

AspectJ 通过连接点向Java添加一些新的程序元素来扩展Java,是Java面向切点一种实现。其主要包括连接点、切点、建议、切面及类型间声明。

2024-01-18 20:34:15 889

原创 MySQL索引

索引是可以高效获取数据的一种机制(数据结构)。提高数据获取效率,降低数据排序的成本,提高排序效率。缺点就是降低了更新表的速度,占用空间。

2024-01-10 18:16:26 929

原创 AspectJ 基础

前两篇AspectJ入门的文章大致的介绍了AspectJ,本文更完整、更详细的介绍AspectJ的基础知识。包括了切点、连接点、类型间声明及thisJoinPoint的基础知识,来更好的理解AspectJ的语法。

2024-01-09 20:08:33 438

空空如也

空空如也

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

TA关注的人

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