Nest-cli内容总结分享

前言


🤡一般我们使用框架开发创建项目的时候都使用脚手架来搭建项目,当然Nest也提供了对应的脚手架那就是Nest-cli,我们今天在《Nest通关秘籍》阅读的基础上来对这部分内容进行汇总一下。

一.Nest-cli命令总览


二.什么是Schema?


🫥Schema(模式):是用于描述数据结构、数据类型和数据关系的组织结构的概念,简单举个例子理解就是用来定义某种数据必须有某个字段,字段必须为某个类型,其实我们对这个东西使用的非常熟悉,比如我们在Vue对props传递的数据进行限制的方式就是Schema的方式。

js 复制代码
  props: {
    colorBar: {
      type: String, // 必须为string
      default: '#d72b18' // 默认为XXX
    },
  },

在Web开发中最常用的就是JSON Schema其实就是使用JSON格式对数据进行限制,如下,其余还有XML Schema等等。

json 复制代码
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "username": {
      "type": "string"
    },
    "email": {
      "type": "string",
      "format": "email"
    },
    "age": {
      "type": "integer"
    },
    "active": {
      "type": "boolean"
    }
  },
  "required": ["id", "username", "email"]
}

三.什么是controller-service-module-dto...


🤡Module(模块)是应用程序的基本组织单位,它封装了相关的功能和组件。每个模块都有自己的作用域,包含了控制器、服务、提供者等。模块可以帮助我们将应用程序的不同功能划分为独立的组件,以便更好地管理和组织代码。

🫥Controller(控制器)是处理HTTP请求和响应的组件。它包含了一系列的路由处理器(路由处理函数),用于处理特定的URL请求,并返回相应的HTTP响应。控制器负责接收请求、处理业务逻辑、调用相应的服务和返回响应。

🥱Service(服务)是处理业务逻辑的组件。它包含了应用程序的核心功能和业务规则的实现。服务被控制器调用,用于执行特定的任务和提供相应的功能。服务可以封装复杂的业务逻辑,并与数据库、外部服务等进行交互。

🐻DTO(数据传输对象)是用于在不同层之间传输数据的对象。DTO通常用于在控制器和服务之间传递数据,以及在服务和数据库之间传递数据。DTO可以在不同层之间定义数据的结构和约束,以确保数据的正确性和一致性。


💡Tips:在MVC架构中,模块的概念通常不是MVC架构的核心概念,Controller(控制器):在MVC架构中,控制器属于控制层(Controller Layer),Service(服务):在MVC架构中,服务通常属于模型层(Model Layer)

四.总结与扩展


😎在nest-cli这一章节基本涉及的问题就这么多,但是纸上得来终觉浅,绝知此事要躬行,还是要亲手试试看的,在服务端的架构模型是mvc我们来看下它各层的内容。

  1. Model(模型):代表应用程序的数据层。模型用于表示数据的结构、业务逻辑以及与数据相关的操作和操作。它负责处理数据的存储、读取、更新和删除,以及与数据相关的业务规则。
  2. View(视图):代表应用程序的用户界面。视图负责将模型中的数据可视化,并向用户展示。它负责呈现数据、接收用户输入,并将用户的操作传递给控制器。
  3. Controller(控制器):代表应用程序的控制逻辑。控制器负责接收用户的输入、处理业务逻辑,并根据需要更新模型和视图。它作为模型和视图之间的协调者,根据用户的操作调用适当的模型方法来更新数据,并选择适当的视图进行渲染。

🐻Nest-cli的相关内容就到这里啦,让我们再接再厉,共同进步~

相关推荐
gb42152873 分钟前
springboot中Jackson库和jsonpath库的区别和联系。
java·spring boot·后端
程序猿进阶4 分钟前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
颜淡慕潇40 分钟前
【K8S问题系列 |19 】如何解决 Pod 无法挂载 PVC问题
后端·云原生·容器·kubernetes
向前看-8 小时前
验证码机制
前端·后端
超爱吃士力架10 小时前
邀请逻辑
java·linux·后端
AskHarries11 小时前
Spring Cloud OpenFeign快速入门demo
spring boot·后端
isolusion12 小时前
Springboot的创建方式
java·spring boot·后端
zjw_rp13 小时前
Spring-AOP
java·后端·spring·spring-aop
TodoCoder13 小时前
【编程思想】CopyOnWrite是如何解决高并发场景中的读写瓶颈?
java·后端·面试