文章
我发布的所有文章。
NestJS 在 Service 之外增加抽象类与 Repository 层
在简单 CRUD 中,直接把 TypeORM 的 `Repository<User>` 注入 Service 完全可行。但随着重复检查、事务、缓存、查询策略和数据源切换不断增加,Service 很容易同时承担业务编排与数据库细节。增加 Repository 层的目的不是让目录更多,而是建立稳定的数据访问边界。
NestJS 接入 MySQL 数据库
本文以 NestJS、TypeORM 和 MySQL 为例,演示如何完成一套基础数据库接入,并通过 `User` 模块实现一个简单的用户列表查询接口。
NestJS 中使用 Middleware 中间件
在 NestJS 中使用 Middleware 中间件,实现一个简单的请求ID中间件,用于追踪请求链路。
NestJS 优雅实现环境变量配置与校验
在 NestJS 中基于 @nestjs/config 和 joi 实现优雅的环境变量配置与校验。
NestJS 中 Module、Controller 和 Service 的直接关系
NestJS 项目通常从 `Module`、`Controller` 和 `Service` 三类文件开始。本文以 NestJS 默认生成的 `AppModule`、`AppController` 和 `AppService` 为例,说明三者的职责边界、依赖关系和一次 HTTP 请求在它们之间的流转过程。
Nest CLI 常用命令速查
Nest CLI 是 NestJS 官方提供的命令行工具,用来创建项目、生成模块文件、启动开发服务和维护项目结构。对于刚开始学习 NestJS 的项目来说,熟悉 CLI 命令可以减少手动创建文件时的路径错误,也能让 `Module`、`Controller`、`Service` 的组织方式更统一。