- 博客(31)
- 收藏
- 关注
原创 Spring MVC的DispatcherServlet请求路由映射分发原理与设计模式应用分析
Spring MVC设计模式应用与后端开发启示 Spring MVC通过DispatcherServlet实现了高效灵活的请求分发机制,其核心设计思想包括: 组件的职责分离:将路由映射、处理器执行和视图解析等职责解耦,通过HandlerMapping、HandlerAdapter等接口实现模块化协作 策略模式的应用:支持多种路由策略(如注解驱动、Bean名称映射等)的动态选择和扩展 适配器模式的价值:通过HandlerAdapter统一不同处理器类型的调用接口,保持核心逻辑简洁 这些设计模式的应用带来了高度
2025-06-11 23:18:02
637
原创 Java后端开发框架中的设计模式解析与应用
Spring Boot、Spring MVC和MyBatis框架中蕴含了多种设计模式,这些模式共同构成了框架的核心机制,使得框架能够提供丰富的功能同时保持良好的性能和可维护性。Spring框架:依赖注入、AOP、工厂方法等Spring MVC框架:MVC架构、适配器、拦截器、策略等MyBatis框架:工厂方法、动态代理、策略、组合等理解这些设计模式的原理和应用,对于Java后端开发程序员来说至关重要。它们不仅帮助开发者更好地使用框架,还能在日常开发中灵活运用这些模式,构建更加高质量的软件系统。
2025-06-10 00:30:07
322
原创 面向对象设计模式在Spring Boot时代的演变与应用
摘要 本文探讨了面向对象设计模式在Spring Boot时代的演变与应用。传统设计模式分为创建型、结构型和行为型三大类,分别解决对象创建、组合和交互问题。这些模式实现了SOLID等面向对象设计原则。随着Spring Boot框架的发展,许多模式被框架特性替代:单例模式由容器管理实现,工厂模式被依赖注入简化,模板方法模式内置在框架中,代理模式由AOP机制实现,观察者模式被事件机制替代。然而适配器模式等仍有一定应用价值。开发者需理解模式核心思想以应对复杂场景,同时充分利用框架特性提高开发效率。
2025-06-02 00:09:36
1052
原创 Markdown基础语法介绍
本文用尽量简洁的内容介绍Markdown的基本语法,同一个东西可能有多同的方式进行表示,比如无序列表除了用’ - ‘之外还能用’ * ',其他的表示方式这里就不再进行赘述了,有兴趣的同学可以自行搜索。不同的Markdown编辑器语法方面可能也会有些许差异,此Markdown语法是根据Typora来的。注意事项:链接地址要写好协议名称,否则可能导致无法跳转。
2023-06-04 23:46:55
71
原创 strlen函数的三种模拟实现方法
在探讨strlen函数的实现方法之前,我们先说一下strlen函数的作用和实现原理。strlen函数介绍strlen函数是用来计算字符串的长度的,其函数声明如下:size_t strlen ( const char * str );strlen的返回类型是size_t类型,也就是unsigned long long类型,参数是字符指针类型,const修饰是为了让str所指向的内容不能被改变。C语言中的字符串都以\0作为结束标志,strlen函数计算的就是字符串\0之前的字符个数,如果一
2022-04-10 15:32:11
751
2
原创 数据在内存中的存储(C语言)
数据基本类型的分类:C语言中的基本类型大致可分为两类,一种是整型,一种浮点型。整型又可分为有符号(signed)和 无符号(unsigned)型,这两种子类型又可分为char、short、int、long、long long 型。由于字符型char在内存中是以其ASCII码形式存储的,因此char归属于整型。浮点型为float,double等。整数的三个码在计算机中整数有三种表示形式,原码,反码和补码。整数转换为二进制形式就是其原码,其中最高位是符号位,0表示正,1表示负,其余位为数值位
2022-03-27 15:23:05
1500
2
原创 C语言实现三字棋
首先三字棋的玩法大家应该都比较熟悉,其实就是与五子棋的玩法差不多,只是五子成线为赢变成了三子成线为赢。1.先上代码效果:2.然后说一下实现的逻辑:2.1首先肯定是建立一个进入退出游戏的环节,如果选择进入则开始游戏,选择退出则程序结束,并且如果玩家玩完一局后还可进行选择是否继续游戏。2.2第一步有两个分支,如果选择退出游戏则程序结束,如果选择开始游戏则要进入游戏。所以我们下一步是实现游戏的环节。2.3游戏的实现要分为许多步骤,首先要先建立一个空的棋盘,然后玩家和电脑交替下棋,并且每下一
2022-03-15 23:37:57
5050
1
原创 不创建临时变量交换两个数
1.首先要明白 按位异或运算符^的使用规则:按位异或操作符是有左右两个操作数并且左右操作数都为整数,a^b的结果是把a与b的补码按位异或,异或规则是相同为假,不同为真。例如 1 ^ 1 = 0,1 ^ 0 = 1,0 ^ 1 = 1, 0 ^ 0 = 0。2.要知道关于^的一些性质:a ^ a = 0a ^ 0 = aa ^ b = b ^ a3.代码实现#include <stdio.h>int main(void){ int a = 1, b = 2;..
2022-03-15 23:10:02
129
1
原创 关于数组指针
先上两个企图用数组指针输出数组的代码://代码1:#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>void print(int (*p)[4]);int main(void){ int a[3][4]; int(*p)[4] = a; int i, j; for (i = 0; i < 3; i++) { for (j = 0; j < 4; j++) { scanf("%d", *(p +
2022-02-26 11:44:43
315
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人