
SSM
文章平均质量分 91
SSM
小胡说技书
这个作者很懒,什么都没留下…
展开
-
Serverless(无服务器架构)和 FaaS(函数即服务)是什么?全方位解析
Serverless(无服务器架构)是一种云计算交付模式,其核心思想在于抽象出底层服务器管理,将基础设施运维交由云服务提供商负责。开发者只需关注业务逻辑,而底层资源(包括计算、存储、网络等)均以按需、按用量计费的方式动态分配。这一模式不仅包括计算能力,还涵盖数据存储、消息队列、身份认证等无服务器资源,形成一整套生态。FaaS(函数即服务)则是 Serverless 架构中的计算核心,实现了按函数级别执行代码的能力。原创 2025-02-16 16:45:15 · 934 阅读 · 0 评论 -
Session、Cookies 和 Token 的关系详解
除了 **Session** 和 **Cookies**,**Token**(特别是 JSON Web Token,JWT)也经常用于用户身份验证。它们在身份认证过程中有一定的关系与区别。为了更好地理解三者之间的关系,我将详细分析它们的工作方式和适用场景,并探讨如何结合使用来构建一个健全的认证系统。原创 2024-09-10 16:03:40 · 1319 阅读 · 0 评论 -
日志体系结构与框架:历史、实现与如何在 Spring Cloud 中使用日志体系
日志作为软件系统中不可或缺的部分,从早期的简单文本输出演进为复杂的、支持高并发、高性能和分布式追踪的完整体系。在 Spring Cloud 微服务架构中,合理的日志体系设计可以极大提升系统的可观测性和可维护性。通过集成 SLF4J、Logback、Sleuth、Zipkin 和 ELK Stack 等工具,我们可以构建一个功能完备、性能优越的日志系统,帮助开发者在高复杂度环境中快速排查问题并提升系统稳定性。原创 2024-09-23 09:47:12 · 1715 阅读 · 0 评论 -
http协议的特点?以及请求方式有哪些?应用场景?
HTTP(HyperText Transfer Protocol,超文本传输协议)是用于在Web上进行数据通信的协议。它定义了客户端(通常是浏览器)和服务器之间如何交换数据。HTTP是一个无状态、应用层协议,运行在TCP/IP协议之上。原创 2024-08-23 12:38:11 · 1098 阅读 · 0 评论 -
缓存是什么?缓存机制、Spring缓存管理、Redis数据一致性、缓存问题(缓存穿透、缓存雪崩、缓存击穿)及Redis与MySQL使用场景对比
缓存机制、Spring缓存管理、Redis数据一致性、缓存问题(缓存穿透、缓存雪崩、缓存击穿)及Redis与MySQL使用场景对比原创 2024-09-30 11:23:38 · 1748 阅读 · 0 评论 -
软件项目开发流程与团队分工整体认知——基于《信息系统项目管理师教程》(需求分析、系统设计、开发、测试、部署与运维、开发工具与管理软件)
软件项目开发流程与团队分工整体认知——基于《信息系统项目管理师教程》(需求分析、系统设计、开发、测试、部署与运维、开发工具与管理软件)原创 2024-10-09 15:43:17 · 1460 阅读 · 0 评论 -
微服务架构:核心组件解析与设计思考(服务发现、API网关、 配置中心、负载均衡、服务调用、服务熔断、链路追踪、消息队列、服务安全、分布式事务)
(服务发现、API网关、 配置中心、负载均衡、服务调用、服务熔断、链路追踪、消息队列、服务安全、分布式事务)原创 2024-10-06 18:25:44 · 1857 阅读 · 0 评论 -
http笔记,开发须知(Hyper Text Transfer Protocol 超文本传输协议)
包含在POST、PUT等请求中的数据,如表单信息、文件等。:实际返回的数据,如HTML文档、JSON等。:包含请求方法、请求URL和HTTP版本。请求空行:就是用于分割POST请求的请求头。响应空行:就是用于分割POST请求的请求头。:协议版本、状态码、状态描述。原创 2024-08-25 12:04:00 · 335 阅读 · 0 评论 -
Eureka 是什么?入门项目推荐项目,入门Spring Cloud Eureka Demo;包含多区域、多节点的配置示例:Eureka Cluster Setup
Eureka 是分布式系统和微服务架构中的重要组件,通过提供服务注册与发现的功能,简化了服务间的调用和负载均衡。通过深入了解其高级特性与最佳实践,你可以在大数据和分布式系统中有效应用 Eureka,提升系统的可用性和容错性。原创 2024-08-26 11:31:57 · 629 阅读 · 0 评论 -
Spring、Spring Boot 和 Spring Cloud 的区别详解
在软件架构设计中,**Spring**、**Spring Boot** 和 **Spring Cloud** 是 Java 开发人员经常使用的核心框架,它们各自有着不同的功能定位和设计理念。本文将从框架特性、应用场景、优缺点等角度深入探讨它们的区别,并通过具体的开发场景加以说明。原创 2024-09-27 16:38:51 · 2539 阅读 · 0 评论 -
MyBatis 中 `#` 和 `$` 的区别与使用策略
理解和的不同使用场景和各自的优缺点,可以帮助我们在实际开发中编写更安全、高效、可维护的MyBatis代码。在大多数情况下,推荐使用,只有在必要时才使用,并做好安全防范措施。原创 2024-08-28 16:11:47 · 838 阅读 · 0 评论 -
解读若依框架中的`@Excel` 和 `@Excels` 注解
通过详细分析@Excel和@Excels注解,我们可以看到若依框架为Excel导出提供了非常灵活和强大的功能。通过这些注解,开发者可以精确控制每个字段的显示方式、格式、排序以及其他细节,确保生成的Excel报表既符合业务需求,又能够提供良好的用户体验。在实际开发中,合理使用这些注解,可以大大提高Excel导入导出功能的开发效率和代码的可维护性。同时,借助若依框架提供的强大功能,我们可以轻松实现对数据的精细化控制,满足不同业务场景下的需求。原创 2025-01-09 19:01:03 · 1962 阅读 · 0 评论 -
解析若依框架中的认证与日志管理:@RequiresPermissions或@Log是什么?:基于Spring Security与JWT的实践
认证中心是一个专门用于处理用户身份认证的服务。其主要作用是判断用户是否为合法用户,最常见的方式是核对用户输入的用户名和密码与系统存储的用户名和密码进行比对,从而验证用户身份。是一款高度可定制的安全框架,它为 Spring 应用提供全面的认证与授权服务。Spring Security 能够帮助开发者控制系统的访问权限,保护应用免受各种安全攻击(如 CSRF、XSS 等)。用户认证:使用用户名和密码进行身份验证,或通过其他认证方式(如基于表单、基本认证、OAuth2等)。权限授权。原创 2025-01-21 17:24:19 · 1191 阅读 · 0 评论 -
跨域(Cross-Origin)问题概述与后端解决方案(CORS(跨域资源共享)、JSONP(JSON with Padding)、代理服务器)
跨域的后端解决方案(CORS(跨域资源共享)、JSONP(JSON with Padding)、代理服务器)的代码示例原创 2024-09-09 12:46:52 · 1707 阅读 · 0 评论 -
对Spring的理解,设计思想,核心组件,java框架
Spring是一个功能强大的开源框架,旨在简化Java企业应用程序的开发,提供了全面的基础设施支持,特别是在开发复杂的企业级应用时。Spring的核心目标是通过提供松耦合的架构,使得Java开发更加简单、灵活和高效。原创 2024-08-25 12:07:03 · 606 阅读 · 0 评论 -
Servlet笔记,java开发须知
Java技术,用于处理HTTP请求和生成动态Web内容。Servlet运行在Web服务器中,通常与Java EE应用程序一起使用。原创 2024-08-25 12:02:02 · 861 阅读 · 0 评论 -
MyBatis动态SQL标签总结、开发手册、高阶用法(动态SQL、OGNL、批量操作、片段重用、 SQL 组合、 执行优化、嵌套查询与延迟加载)
MyBatis动态SQL标签总结、开发手册、高阶用法(动态SQL、OGNL、批量操作、片段重用、 SQL 组合、 执行优化、嵌套查询与延迟加载)原创 2024-09-08 14:13:18 · 2123 阅读 · 0 评论 -
全面解读 Spring 和 Spring MVC 常用注解
Spring 是一个功能强大的 Java 框架,用于构建企业级应用程序。Spring MVC 是 Spring 框架的一部分,专注于构建基于 Web 的应用程序。为了有效地使用这些框架,了解常用注解及其应用场景至关重要。原创 2024-08-31 21:18:01 · 1308 阅读 · 0 评论 -
MyBatis 如何映射 Enum(使用 EnumTypeHandler、自定义 TypeHandler)
在现代 Java 开发中,`Enum`(枚举)作为一种定义有限集合常量的类型,被广泛用于表示状态、类型或配置选项。作为 Java 开发中的主流 ORM 框架之一,MyBatis 为 `Enum` 提供了内置的支持,并允许开发者通过自定义 `TypeHandler` 来实现更复杂的映射逻辑。本篇博客将深入讨论 MyBatis 如何处理 Java 枚举类型的映射,重点介绍 `EnumTypeHandler` 和自定义 `TypeHandler` 的实现。原创 2024-10-24 13:57:07 · 2056 阅读 · 0 评论 -
MyBatis ResultMap 和 DTO 映射:深入对比与应用场景
映射方式简介优点缺点适用场景ResultMap 映射通过手动定义 Java 对象属性与数据库列的映射。高度灵活,可处理复杂映射,避免了 DTO 类的创建。代码较复杂,难以维护,尤其是当映射逻辑复杂时。复杂的数据库表关系、需要灵活处理的场景DTO 直接映射将 SQL 查询结果直接映射到预先定义好的数据传输对象(DTO)。代码简单易读,便于维护,适用于简单查询。需要为每个查询创建 DTO 类,可能导致类爆炸。简单的查询和结果处理,不涉及复杂映射的场景场景推荐方式原因。原创 2024-08-28 17:27:41 · 1109 阅读 · 0 评论 -
Spring AOP:使用面向切面编程(AOP)进行Java后端开发
面向切面编程(AOP)是一种编程范式,通过分离横切关注点来提高模块化程度。在传统的面向对象编程(OOP)中,业务逻辑与某些横切关注点(如日志记录、事务管理、安全性等)通常会交织在一起,这使得代码难以维护和扩展。AOP通过将这些横切关注点从业务逻辑中分离出来,能够更好地实现代码的关注点分离(Separation of Concerns)。原创 2024-08-29 11:35:22 · 1706 阅读 · 0 评论 -
微服务架构中的数据管理策略、数据一致性问题及分布式数据库挑战(ACID事务与BASE理论、Saga模式与事件溯源的实现)
在现代软件架构中,微服务已经成为构建大规模、可扩展系统的主流选择。然而,微服务架构带来了复杂的数据管理和一致性挑战,特别是在分布式环境下。在这篇博客中,我们将深入探讨微服务架构中的数据管理策略、跨服务数据一致性、Saga模式与事件溯源的实现,以及分布式数据库的关键挑战。原创 2024-10-25 09:21:17 · 1177 阅读 · 0 评论 -
Java Spring AOP 切点表达式开发手册
通过这个综合案例,我们详细展示了如何使用Spring AOP的切点表达式来控制应用程序中的方法拦截。理解这些表达式并灵活运用它们,可以极大地提高代码的可维护性和可扩展性。通过组合和排除规则,你可以精确地控制哪些方法需要增强,哪些不需要,从而实现如日志记录、权限校验、事务管理等典型的AOP应用场景。原创 2024-08-30 10:06:29 · 774 阅读 · 0 评论 -
解读若依框架中的 @Xss 注解
跨站脚本攻击(XSS,Cross-Site Scripting)是一种常见的 Web 安全漏洞,攻击者通过在输入字段中注入恶意脚本代码,在页面中执行这些代码,从而窃取用户信息、劫持会话等。假如需要对某些字段增加特定的校验规则,例如限制输入字符长度,可以扩展。@Xss 注解通过结合验证器提供了高效的 XSS 防护机制。其模块化设计符合 Java 开发最佳实践,便于代码复用和扩展。在实际应用中,可灵活扩展校验逻辑以适应不同业务场景。原创 2025-01-08 22:26:41 · 1057 阅读 · 0 评论 -
深入剖析 MyBatis-Plus:操作总结、对比与实践案例(CRUD 操作、分页、条件构造器、自动填充、高阶用法:自定义 SQL、乐观锁、多租户支持、扩展 BaseMapper)
它以“**无侵入**”为设计理念,使得用户能够在 MyBatis 的基础上无缝升级,保留原有特性,同时加入更多自动化功能,如CRUD 操作、分页、条件构造器、自动填充,高阶用法:自定义 SQL、乐观锁、多租户支持、扩展 BaseMapper。原创 2024-09-26 17:31:08 · 1368 阅读 · 0 评论 -
Spring SSM 与 SSH 技术栈对比:全面分析、对比图表
通过以上对比分析,可以看出,SSM 技术栈更加简洁、灵活,适合现代企业级应用的开发,而 SSH 技术栈虽然强大,但由于其复杂的配置和开发流程,逐渐被 SSM 所取代。原创 2024-08-27 15:33:16 · 1143 阅读 · 0 评论 -
1.分页查询(后端)—— Vue3 + SpringCloud 5 + MyBatisPlus + MySQL 项目系列(基于 Zulu 11)
本手册是基于 Vue3 + SpringCloud5 + MyBatisPlus + MySQL 的项目结构和代码实现,旨在作为一个教学案例进行讲解。为了使案例更具普适性,文档中的公司名称、实体类、表名以及字段名称等敏感信息均已脱敏。原创 2024-09-24 13:36:46 · 872 阅读 · 0 评论 -
MyBatis入门,执行流程、核心配置、动态SQL、多表映射、入门案例
MyBatis 是一款优秀的持久层 ORM(Object-Relational Mapping)框架,主要用于将 Java 对象与数据库中的记录相映射。与其他 ORM 框架如 JPA、Hibernate 相比,MyBatis 的显著特点在于它对 SQL 语句的高度定制化支持。通过 MyBatis,开发者可以直接使用简单的 XML 或注解来配置 SQL 语句和映射规则,大大减少了传统 JDBC 编程中繁琐的代码,如手动设置参数和获取结果集的操作。原创 2024-08-28 16:48:48 · 1119 阅读 · 0 评论 -
以30个面试问题和案例为导向:全面解析 Java Servlet是什么?基本概念、实现原理、生命周期、类结构、请求与响应的处理机制,以及性能优化和安全性管理
Servlet 是 Java Web 开发的核心组件之一,负责处理客户端请求并生成动态响应。本文将深入探讨 Servlet 的基本概念、实现原理、生命周期、类结构、请求与响应的处理机制,以及性能优化和安全性管理,帮助开发者从多方面掌握 Servlet。原创 2024-10-23 16:28:31 · 1197 阅读 · 0 评论 -
领域驱动设计(DDD)是什么?——从理论到实践的全方位解析
领域驱动设计(DDD)概述DDD 是一种以业务领域为核心的建模方法,它主张从实际业务问题中提炼出领域模型,并借助与业务专家共同构建的“普适语言”,确保开发人员与业务人员在同一概念体系下沟通与协作。核心目标捕捉复杂业务逻辑:将实际业务中的规则和流程精确地映射到代码模型中。降低系统耦合:通过划分业务边界,使得各模块之间保持高度独立,从而提升代码复用性和系统灵活性。高内聚、低耦合的系统构建高内聚:指系统内部各模块、组件围绕单一业务目标组织,职责单一,内部关系紧密。原创 2025-02-16 18:24:11 · 1324 阅读 · 0 评论 -
Spring 中使用的设计模式全面解析
Spring 框架作为Java开发的核心技术栈之一,广泛应用了多种设计模式来简化复杂系统的开发,提升代码的复用性、可维护性和扩展性。本文将全面解析Spring框架中所应用的设计模式,并通过案例来解释这些设计模式的实际作用。原创 2024-09-07 09:24:44 · 1454 阅读 · 0 评论 -
CI/CD 和 DevOps 工具概述:Jenkins 、Docker 的概述、工作流程、对比
CI/CD 和 DevOps 工具概述:Jenkins 、Docker 的概述、工作流程、对比原创 2024-10-09 16:09:18 · 1293 阅读 · 0 评论 -
Session 和 Cookies的区别详解
我将从概念、工作原理、安全性、存储位置、生命周期等方面进行详细阐述,并通过一个具体案例进行综合分析。原创 2024-09-10 15:55:55 · 1027 阅读 · 0 评论 -
多租户架构的全景分析(是什么?基本概念、实现策略、资源管理和隔离、数据安全与隔离、性能优化、扩展性与升级、案例研究)
多租户架构在云计算和SaaS应用中越来越流行,因为它能够让多个客户共享同一个应用系统并降低运营成本,但这也带来了复杂性和挑战。本文将通过详细的分析,帮助开发者更好地理解多租户架构的优势和实现策略。原创 2024-10-23 20:58:47 · 1222 阅读 · 0 评论 -
MyBatis-Plus插入优化:降低IO操作的策略与实践
MyBatis-Plus插入优化,降低IO操作的4种方法示例,以及案例。原创 2024-09-11 22:43:24 · 1173 阅读 · 0 评论 -
事务的传播方式:全面深入解析与Java开发中的应用、Spring中的事务传播类型、对比、选择策略、常见问题与优化
事务传播(Propagation)定义了方法或组件在被调用时,其事务如何传播。主要是在方法调用之间,如果一个事务已经存在,当前方法该如何处理——是加入现有事务,开启新事务,或者不使用事务。它的核心目的是控制不同业务逻辑中事务的管理与行为,从而达到数据一致性的目的。事务传播方式在Java企业级开发中扮演了至关重要的角色,它影响了方法调用间事务的传播和管理。在选择传播方式时,开发者需要根据具体业务需求权衡性能和一致性,合理选择REQUIREDNESTED等传播方式,以确保数据一致性并优化应用性能。原创 2024-10-12 15:03:44 · 1269 阅读 · 0 评论 -
软件架构的演变与趋势(软件架构演变的阶段、综合案例分析:在线电商平台架构演变、开发补充)
通过这一案例分析,我们可以清晰看到系统架构的演变过程。架构的演进是伴随业务增长和技术挑战逐步进行的,而每种架构都有其适用的阶段和场景。在架构设计过程中,团队需要结合实际业务需求、技术能力和未来发展计划,选择合适的架构模式,逐步引入新技术,以确保系统具备良好的扩展性、稳定性和维护性。原创 2024-09-20 09:05:04 · 1619 阅读 · 0 评论 -
小白向,超简单!Nginx是什么?Win入门与实践:初识与未来探索
Nginx 作为高性能的 Web 服务器、反向代理服务器及负载均衡器,在现代系统架构中扮演了重要角色。本文将以一个简单的实践操作为例,帮助初学者快速入门,同时分享未来学习方向的建议。原创 2025-01-11 23:46:27 · 1547 阅读 · 0 评论 -
解析若依 `R.java` 类——ruoyi-common-core
在复杂的业务场景中,单一的SUCCESS和FAIL状态码可能无法满足需求。通过方法,可以轻松扩展状态码的应用。示例代码return R.fail(409, "邮箱已被占用");return R.fail(409, "用户名已被占用");R.ok() : R.fail(500, "注册失败,服务器异常");case 200:alert("注册成功");break;case 409:alert("冲突错误:" + data.msg);break;原创 2025-01-09 19:02:22 · 1287 阅读 · 0 评论 -
一文通Maven :入门及Spring Cloud配置详解与最佳实践、进阶技巧、项目案例分析、常用依赖
一文通Maven :入门配置详解与最佳实践、进阶技巧、项目案例分析、常用依赖。原创 2024-09-21 15:45:05 · 1757 阅读 · 0 评论