百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

abp vnext 开发快速入门 1 认识框架

ccwgpt 2024-09-20 13:34 28 浏览 0 评论

最近在做一个项目,用的框架是Abp vnext ,不是Abp, 我自己也是刚开始用这个框架来做项目,难免要查资料,这个框架官方有中文文档,可以到官网www.abp.io 去查看,国内也有一些写了相关的文档,但是很多文档基本就是把官方文档搬过来,对于实际有些关键点的坑并没有填,还有些写的通篇理论知识,各种名词,像老太太的裹脚布,查资料查起来各种头大。我是实战派,这里就自己遇到的问题和开发项目的经验讲一些自己的理解,也好让用这个框架的人员快速入门。

好,废话不多说,下面就开始说,全是干货哦(注意看以下内容要有.net core开发相关知识)。

先说下我认为能使用一个框架要首先解决的几个问题:

  1. 要能理解框架整体结构
  2. 要能用框架实现基本的增删改查
  3. 了解框架如何实现角色权限控制
  4. 系统的日志记录、缓存处理等等框架是否实现,如何实现

了解了以上几点,就基本可以用这个框架来开始做项目了,再有什么细节问题,可以遇到的时候再查资料解决。本篇我先说一下第一个点,就是abp vnext 框架的整体结构。

1、获取框架代码:

框架代码可以通过两种方式获取,使用CLI直接下载 ,这里我用的直接下载,有喜欢用CLI的也可以看着官方文档看使用方法,官方文档这块介绍的比较详细,我就不说了,这里用直接下载的方式。

下载的时候,ProjectType有两个类型,Application 和 Module ,这两个类型的区别,官网也有详细的说明,我个人的理解就是Application 是带了Web项目,传统的系统框架。而Module 官网的介绍是这样的,可用此模板开发基于模块开发最佳实践和约定的可复用 应用程序模块 . 它同样适用于开发微服务。我理解如果项目要基于微服务框架,或者以后准备要弄成微服务的,就用这个。abp vnext我认为就是为了微服务而生的,当然下载这个了。于是



把include user interface 勾选上

下载下来解压缩:


主要看host,src 两个目录




下边我把主要的几个项目讲一下,先看host下项目

1、TestProject.Host.Shared ,这个项目其实没多大用的到。看到Shared基本也能想到了。就是一些公用的配置之类的。比如他官方在这里做了个是否启用租户模式的配置。

2、TestProject.HttpApi.Host,这个比较重要,这是当前模块(我这个模块名字叫TestProject)的 主机宿主,里边各种模块相关的配置,运行起来这个,才能访问模块提供的api。

3、TestProject.IdentityServer,这是AuthServer,用的identityserver4,用户的授权全靠它了。这个服务在整个项目存在一个就行了,如果多模块,比如我又创建了个TestProject2,那么TestProject 和TestProject2 是共用 这个AuthServer 的。

4、TestProject.Web.Host 实际开发基本用不大到,这个官方给的一个例子,演示了客户端如何使用identityserver4进行登录

5、TestProject.Web.Unified 目前还没用到,也不知道有什么用,不说了这个

然后看下src项目

1、TestProject.Application ,相当于service层,abp框架可以做到把这层直接转为api,就不用写controller层代码了。具体如何转的后边会讲到。

2、TestProject.Application.Contracts 这层主要放Dto(数据传输对象)和权限的一些配置。

3、TestProject.Domain ,领域层,领域模型开发不了解的可以去找些资料看一下。如果用贫血模型,这层就类似之前的的Model层。

4、TestProject.Domain.Shared,看到Shared了,那么就知道是啥了,公用配置。官网这里给了多语言相关的配置

5、TestProject.EntityFrameworkCore 这个我就不用说了吧

6、TestProject.HttpApi 传统意义的Controller层,这里abp让它失业了。

其他几个目前没用到,估计也没啥用。

apb的主要结构就是这些,了解了这些,入门相当于是抬起了一个脚了。下篇将就实现增删改查做个讲解。

相关推荐

Spring WebFlux vs. Spring MVC(springboot是什么)

背景随着异步I/O和Netty等框架的流行,响应式编程逐渐走入大众的视野。但是,响应式编程本身并不是太新的概念,这个术语最早出现在1985年DavidHarel和AmirPnue...

深度解析微服务高并发:适配SpringMVC框架适配模块及实现原理

适配主流框架如果不借助Sentinel提供的适配主流框架的模块,则在使用Sentinel时需要借助try-catchfinally将要保护的资源(方法或代码块)包起来,在目标方法或代码块执行之前,调...

Spring MVC 底层原理深度解析:从请求到响应的全链路拆解

一、Servlet容器与DispatcherServlet的启动博弈1.Tomcat初始化阶段java//Tomcat初始化流程StandardContext#startInterna...

改造总结之传统SpringMVC架构转换为SpringBoot再到集群

改造出发点,是基于现在服务都在向上云的目标前进,传统SpringMVC难以满足项目持续构建、服务节点任意扩展的需求,所以开始了历史项目的改造。项目改造考虑的主要是兼容以前的业务代码,以及session...

SpringBoot3 整合 Spring MVC 全解析:开启高效 Web 开发之旅

在当今的JavaWeb开发领域,Spring框架家族无疑占据着重要的地位。其中,SpringBoot3和SpringMVC更是开发者们构建强大、高效Web应用的得力工具。今天,...

一文读懂SpringMVC(一文读懂!残疾人低保边缘家庭能领的超实用福利政策)

1.SpringMVC定义1.1.MVC定义Model(模型):是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据View(视图):是应用程序中处理数据显示的部分。通常...

69 个Spring mvc 全部注解:真实业务使用案例说明(必须收藏)

SpringMVC框架的注解为Web开发提供了一种简洁而强大的声明式方法。从控制器的定义、请求映射、参数绑定到异常处理和响应构建,这些注解涵盖了Web应用程序开发的各个方面。它们不仅简化了编码工作,...

Spring MVC工作原理:像拼积木一样构建Web应用

SpringMVC工作原理:像拼积木一样构建Web应用在Java的Web开发领域,SpringMVC无疑是一个让人又爱又恨的存在。它像一位神通广大的积木搭建大师,将一个个分散的功能模块巧妙地拼接在...

5千字的SpringMVC总结,我觉得你会需要

思维导图文章已收录到我的Github精选,欢迎Star:https://github.com/yehongzhi/learningSummary概述SpringMVC再熟悉不过的框架了,因为现在最火的...

SpringMVC工作原理与优化指南(springmvc工作原理和工作流程)

SpringMVC工作原理与优化指南在现代Java开发中,SpringMVC无疑是构建Web应用程序的首选框架之一。它以其优雅的设计和强大的功能吸引了无数开发者。那么,SpringMVC究竟是如何工作...

Spring MVC框架源码深度剖析:从入门到精通

SpringMVC框架源码深度剖析:从入门到精通SpringMVC框架简介SpringMVC作为Spring框架的一部分,为构建Web应用程序提供了强大且灵活的支持。它遵循MVC(Model-V...

3000字搞明白SpringMVC工作流程、DispatcherServlet类、拦截器!

SpringMVC基础虽然SpringBoot近几年发展迅猛,但是SpringMVC在Web开发领域仍然占有重要的地位。本章主要讲解SpringMVC的核心:DispatcherServlet类...

多年经验大佬用2000字透彻解析SpringMVC的常用注解及相关示例

SpringMVC注解SpringMVC框架提供了大量的注解,如请求注解、参数注解、响应注解及跨域注解等。这些注解提供了解决HTTP请求的方案。本节主要讲解SpringMVC的常用注解及相关示例...

知乎热议:如何成为前端架构师,赚百万年薪?

作者|慕课网精英讲师双越最近有一条知乎热议:从一个前端工程师,如何根据目标,制定计划,才能快速进阶成为前端架构师?不久之前我参与了一次直播,讲到了自己对于Web前端架构师的理解。架构师这个角色...

学习笔记-前端开发架构设计(前端架构设计方案)

前端开发的技术选项主要包含以下几点,下面对一些名词概念的解释做了笔记:1、分层架构:把功能相似,抽象级别相近的实现进行分层隔离优势:松散耦合(易维护,易复用,易扩展)常见分层方式:MVC,MVVM2、...

取消回复欢迎 发表评论: