摘要: 一. 什么是架构和架构本质 转载 https://hangzhouhot.com/whatisarch 在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的基础,并用来沟通 阅读全文
posted @ 2024-10-20 00:28 gongchengship 阅读(10) 评论(0) 推荐(1) 编辑
摘要: 前后端分离应用指的是将应用的前端部分(用户界面与交互逻辑)和后端部分(业务逻辑、数据处理、服务器响应)拆分成独立的模块,各自通过 API 进行通信。这种架构设计的目的是提高开发效率、增强可扩展性和灵活性,使前端和后端能够独立开发、部署和维护。 一、传统的前后端耦合应用 vs 前后端分离应用 传统的前 阅读全文
posted @ 2024-10-20 00:10 gongchengship 阅读(369) 评论(3) 推荐(2) 编辑
摘要: 将网站从 HTTP 转换为 HTTPS 能够加密数据传输,还能提高搜索引擎排名 1. 获取 SSL/TLS 证书 首先,你需要获得一个 SSL/TLS 证书。你可以从以下来源之一获取证书: 免费证书: Let's Encrypt:一个免费的、自动化的证书颁发机构(CA),广泛使用且受信任。 付费证书 阅读全文
posted @ 2024-07-04 18:56 gongchengship 阅读(520) 评论(0) 推荐(0) 编辑
摘要: Spring Boot Test 是 Spring Boot 提供的一个强大测试框架,用于帮助开发者简化和加速应用程序的单元测试和集成测试。下面是对 Spring Boot Test 各种测试类型和主要注解的详细教程。 1. Spring Boot Test 的基础概念 Spring Boot 提供 阅读全文
posted @ 2024-11-12 00:28 gongchengship 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 在子类和父类中出现同名属性(即字段)时,最推荐的做法是让每个类都保持独立的 private 属性,并且尽量避免直接通过字段访问父类属性。Java 是面向对象的语言,其设计理念鼓励通过方法(如 getter/setter)访问和修改字段,而不是直接通过字段访问。这种做法可以更好地遵循封装原则,同时提高 阅读全文
posted @ 2024-11-07 22:35 gongchengship 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 在数据库中,Schema(模式) 是一种用于逻辑组织数据库对象的结构。它主要起到以下作用: 组织数据库对象:Schema 用于分组和管理数据库对象,如表、视图、存储过程等。它帮助开发者在一个数据库中更清晰地组织数据和代码,尤其是对于大型或复杂项目。 访问控制:Schema 也是数据库权限管理的一部分 阅读全文
posted @ 2024-11-04 16:34 gongchengship 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 在 Maven 中,scope 定义了一个依赖的使用范围,它决定了依赖在编译、测试、运行、打包等阶段的可见性和作用方式。了解这些作用域有助于控制依赖的加载时机和范围,从而优化构建和运行过程。Maven 的 scope 主要有以下几种: 1. compile (默认) 描述:compile 是 Mav 阅读全文
posted @ 2024-11-01 12:11 gongchengship 阅读(11) 评论(0) 推荐(0) 编辑
摘要: AWS 的 Lambda 服务相当于阿里云的 函数计算(Function Compute)。两者都是无服务器(Serverless)计算平台,允许开发者无需管理底层基础设施,直接上传代码来处理事件驱动的任务。 二者的相似点 事件驱动:两者都可以响应不同的事件触发(例如文件上传、数据库更新、HTTP 阅读全文
posted @ 2024-11-01 12:03 gongchengship 阅读(13) 评论(0) 推荐(0) 编辑
摘要: Quality Gate 是 SonarQube 中的一个功能,旨在根据特定的代码质量指标来评估代码的质量和合规性。通过 Quality Gate,项目团队可以确保代码符合一定的质量标准,避免代码中的潜在问题进入生产环境。它通常用于持续集成(CI)或持续交付(CD)流程中,作为代码合并或部署的一个质 阅读全文
posted @ 2024-10-31 02:00 gongchengship 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 在 Java 中,lambda 表达式要求捕获的局部变量是 final 或者 effectively final(“实际上是 final”)的,即在声明后没有被重新赋值。这一限制是由 lambda 表达式的设计原理和作用域管理机制决定的,目的是确保代码行为的一致性和线程安全。下面详细解释这个原因。 阅读全文
posted @ 2024-10-28 23:58 gongchengship 阅读(24) 评论(0) 推荐(0) 编辑
摘要: Spring Cloud Gateway 是一个基于 Spring Framework 的网关解决方案,用于管理和路由微服务请求。它提供了动态路由、负载均衡、路径重写、过滤请求、限流等功能。以下是 Spring Cloud Gateway 的基本配置方法,包括路由、过滤器和限流等。 1. 基本依赖配 阅读全文
posted @ 2024-10-28 22:52 gongchengship 阅读(152) 评论(0) 推荐(0) 编辑
摘要: CloseableHttpClient 的 execute 方法通过指定的 HttpClientResponseHandler 对响应进行处理。HttpClientResponseHandler 是一个回调接口,允许我们在响应返回时对其进行自定义处理。这个方法特别有用,因为可以在 execute 调 阅读全文
posted @ 2024-10-28 00:32 gongchengship 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 是的,在默认情况下,一旦 ServletRequest 的输入流(InputStream 或 Reader)被读取,流就被标记为已消费,数据也无法再次读取。这是因为 ServletRequest 的输入流基于 HTTP 请求的字节流实现,读取数据后,流会关闭或标记为已消费状态,从而阻止重复读取。 如 阅读全文
posted @ 2024-10-28 00:04 gongchengship 阅读(27) 评论(0) 推荐(0) 编辑