引迈-JNPF低代码项目技术栈介绍

从 2014 开始研发低代码前端渲染,到 2018 年开始研发后端低代码数据模型,发布了JNPF开发平台。

谨以此文针对 JNPF-JAVA-Cloud微服务  行相关技术栈展示:

1. 项目前后端分离

前端采用Vue.js,这是一种流行的前端JavaScript框架,用于构建用户界面。Vue.js具有轻量级、可扩展性强和生态系统丰富等特点,被广泛应用于构建单页面应用程序。

后端采用SpringBoot,这是一种基于Java的开源框架,用于简化Spring应用的初始搭建以及开发过程。SpringBoot通过自动配置和约定大于配置的原则,简化了Spring应用的配置和开发。

此外,JNPF还采用MyBatis-Plus作为持久层框架,它是一个功能强大的MyBatis扩展,可以大大简化数据库操作的开发。

技术领先

采用前后端分离技术,后端采用java主流开发技术栈,前端同时适配Vue2/Vue3技术栈;

组件丰富

包含多个开箱即用的通用组件,如消息中心,文件服务、第三方登录等;

复杂场景

满足高并发、大数据处理业务场景,对于高并发应用的功能,可以基于领域拆分微服务,并针对微服务去独立、灵活的扩展服务器资源;

SaaS应用

无缝切换SaaS模式,支持企业搭建自己的SaaS应用;

✅想要尝试感受低代码的同学,点击JNPF开发者中心地址可以获取,也可以后台联我。

2. 整体架构

3. 平台特性

3.1 构架特性

主体框架:Spring Cloud、Spring Cloud Alibaba、Spring Boot、Spring Cloud Stream、MyBatis-Plus、Alibaba Druid、Apache Dubbo、Hutool、Lombok等主流技术;

前后端分离:采用主流开发模式-前后端分离框架设计,前端同时适配Vue2/Vue3,代码风格精简,面向后端开发工程师,易于理解和上手;

统一接口管理:集成Swagger/Knife4j,可自动生成Api文档;

数据库兼容:支持MySQL、SQLServer、Oracle、PostgreSQL等主流数据库,支持达梦、人大金仓等国产信创数据库;

国产信创操作系统:支持麒麟服务器操作系统、统信UOS、华为欧拉等国产信创服务器操作系统部署;

服务注册&发现与调用:使用Nacos作为注册中心,实现多配置、分群组、分命名空间、多业务模块的注册和发现功能;

内部调用:集成了Open Feign和Apache Dubbo两种内部调用模式,并且可以实现无缝切换;

业务熔断:采用Sentinel实现业务流量控制、熔断降级、系统负载等多个维度保护服务的稳定性,避免服务之间出现雪崩;

应用监控:利用Spring Boot Admin来监控各个服务的运行状态;

链路追踪:基于SkyWalking作为项目的全链路性能监控,从整体维度到局部维度展示各项指标,将跨应用的所有调用链性能信息集中展现,可方便度量整体和局部性能,并且方便找到故障产生的源头,生产上可极大缩短故障排除时间;

3.2 功能特性

灵活的权限控制:基于RBAC权限管理,该功能模块下的功能用于维护企业的组织架构信息以及员工信息。主要包含了组织架构管理、部门管理、分级管理员、角色管理、岗位管理等功能。用户可在此功能模块下维护公司的组织架构信息(组织/部门/角色/岗位)和用户信息,也可以通过第三方应用(钉钉/企业微信)将组织架构信息一键导入到系统中,也可以使用组织架构和员工信息的导入功能将数据导入到系统中;

  • 消息中心:集成消息中间件Apache RocketMQ(默认),RabittMQ,Apache Kafka,实现业务异步处理;
  • 第三方登录:开箱即用的第三方授权登录工具类库,提供统一接口,支持接入任意OAuth网站,快速实现OAuth登录功能;
  • 单点登录:支持OAuth 2.x/OpenID Connect、SAML 2.0、JWT、CAS、SCIM等标准协议,提供安全、标准和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、RBAC权限管理和资源管理等;
  • 多租户:借助于MyBatis-Plus实现Saas多租户隔离方案;

4. 技术栈

4.1 后端技术栈
  • 主框架:Spring Boot + Spring Framework
  • 持久层架:MyBatis-Plus
  • 数据库连接池:Alibaba Druid
  • 多数据源:Dynamic-Datasource
  • 数据库兼容: MySQL、SQLServer、Oracle、PostgreSQL、达数据库、人大金仓数据库
  • 分库分表解决方案:Apache ShardingSphere
  • 权限认证框架:Sa-Token+JWT
  • 代码生成器:MyBatis-Plus-Generator
  • 模板引擎:Velocity
  • 任务调度:XXL-JOB
  • 分布式锁:Lock4j
  • JSON序列化:Jackson&Fastjson
  • 缓存数据库:Redis
  • 校验框架:Validation
  • 分布式文件存储:兼容MinIO及多个云对象存储,如阿里云 OSS、华为云 OBS、七牛云 Kodo、腾讯云 COS等
  • 工具类框架:Hutool、Lombok
  • Api文档生成工具:Knife4j
  • 项目构建:Maven
4.2 前端技术栈
4.2.1 Vue2技术栈
  • Vue2全家桶
  • Element-UI
  • Axios
  • Sass
  • Echarts
  • Dayjs
4.2.2 Vue3技术栈
  • Vue3.0全家桶
  • TypeScript
  • Vite
  • pinia
  • pnpm
  • Ant Design vue3
  • Less
  • Echarts
  • Dayjs
  • Fullcalendar
  • monaco-editor
  • Sortablejs
  • tinymc
4.3 数据库支持
  • MySQL 5.7.x/8.0.x
  • SQLServer 2012+
  • Oracle 11g
  • PostgreSQL 12+
  • 达梦数据库(DM8)
  • 人大金仓数据库(KingbaseES_V8R6)

官网:JNPF

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/205131.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++模拟实现unordered_map和unordered_set

目录 1.了解哈希表 1.哈希表 1.他的实现原理就是: ​编辑 2.写单个数据的类型(这边先模拟map的kv类型,后面会再一起改,这边先一步步的先简单实现他) 3.封装整个类: 4.哈希表中存储string 2.哈…

Python网络爬虫练习

爬取历年中国大学排名(前20名),并随机选取一所高校画图展示其历年总分变化,并计算平均分,在图上展示该平均分直线: 代码如下: import matplotlib.pyplot as plt import pandas as pd import requests import randomdef main(yea…

【c++j继承】

在编程领域中,面向对象是一种非常流行的程序设计方法。C 继承是面向对象编程中的一个重要概念,它允许我们创建一个新的类(子类)来继承已有的类(父类)的属性和方法。通过继承,我们可以实现代码的…

Banana Pi BPI-R3 Mini 开源路由器,也能拍出艺术美感

香蕉派BPI-R3 Mini路由器板开发板采用联发科MT7986A(Filogic 830)四核ARM A53芯片设计,板载2G DDR 内存,8G eMMC和128MB SPI NAND存储,是一款非常高性能的开源路由器开发板,支持Wi-Fi6 2.4G/5G(MT7976C)&am…

零基础学Python第三天||写一个简单的程序

通过对四则运算的学习,已经初步接触了Python中内容,如果看官是零基础的学习者,可能有点迷惑了。难道敲几个命令,然后看到结果,就算编程了?这也不是那些能够自动运行的程序呀? 的确。到目前为止…

仿美团外卖源码/在线外卖平台源码PHP/支持多商户+多样化配送费+本土外卖+支持第三方配送

源码简介: 进云仿美团外卖源码,作为外卖平台源码,它不仅支持多商户、多样化配送费、本土外卖,还支持第三方配送。 进云仿美团外卖源码是一个进云源生插件,支持多商户多样化配送费模式本土外卖平台支持第三方配送&…

【工业智能】Solutions

各类问题对应的解决方案 工艺参数推荐APC 排产调度智能算法强化学习 运筹优化空压机群控 预测 工艺参数推荐 APC 排产调度 智能算法 遗传算法 强化学习 DDQN 运筹优化 空压机群控 MIP混合整数规划 能耗优化 预测 电池容量预测 时序预测,回归预测 点击剩余…

亲子开衫外套 I 真的好温柔好有气质

分享适合宝宝和麻麻 一起穿的开衫外套 包芯纱拼貂毛 软糯亲肤不扎人 上身体验感非常不错 这种面料还不易起球 质感满满,单穿内搭都可!

开源vs闭源,大模型的未来在哪一边?

开源和闭源,两种截然不同的开发模式,对于大模型的发展有着重要影响。开源让技术共享,吸引了众多人才加入,推动了大模的创新。而闭源则保护了商业利益和技术优势,为大模型的商业应用提供了更好的保障。 那么&#xff0c…

如何进行微服务测试?

微服务测试是一种特殊的测试类型,因为它涉及到多个独立的服务。以下是进行微服务测试的一般性步骤: 1. 确定系统架构 了解微服务架构对成功测试至关重要。确定每个微服务的职责、接口、依赖项和通信方式。了解这些信息可以帮助您更好地规划测试用例和测…

wvp如果确认音频udp端口开放成功

用到工具 在服务器上开启端口监听 选中udp server,点击创建按钮 设置服务器监听端口 在客户端连接服务器端口 选中udp客户端,点击创建 输入服务器地址 远程端口和本地端口,本地端口只要没被占用都可以使用 ,点击确认 发送数据 …

redis运维(十三) hash哈希

一 哈希 ① 定义 hash: 散列说明:key对应是值是键值对[python中的字典],其中键在redis中叫field.形如:value[{field1,value1},...{fieldN,valueN}],值本身又是一种键值对结构 ② 优点和缺点 wzj_height 180wzj_age 18等价 -->…

论文阅读:Distributed Initialization for VVIRO with Position-Unknown UWB Network

前言 Distributed Initialization for Visual-Inertial-Ranging Odometry with Position-Unknown UWB Network这篇论文是发表在ICRA 2023上的一篇文章,本文提出了一种基于位置未知UWB网络的一致性视觉惯性紧耦合优化测距算法( DC-VIRO )的分布式初始化方法。 对于…

数据仓库模式之详解 Inmon 和 Kimball

目录 一、前言 二、企业信息工厂(Inmon) 2.1 概念 2.2 主要组件 2.3 流程 三、多维数据仓库(Kimball) 3.1 概念 3.2 核心组件 3.3 流程 四、异同及用途对比 4.1 异同对比 4.2 特征比较 一、前言 大部分关于数据仓库构建…

软件测试测试文档的编写和阅读

在软件测试中的流程中,测试文档也是一个重要的流程,所以测试人员也需要学习测试文档的编写和阅读。 一、定义: 测试文档(Testing Documentation)记录和描述了整个测试流程,它是整个测试活动中非常重要的文…

外包干了5个月,技术退步明显.......

先说一下自己的情况,大专生,18年通过校招进入武汉某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…

基于算网大脑的探索和实践

2022年2月,国家正式发布消息,同意在内蒙古、贵州、甘肃、宁夏等地启动建设国家算力枢纽节点,标志着,”东数西算“工程已全面启动。 “东数西算”战略是一项长期的策略,并非是一时的热点,跟“南水北调”工程…

【古月居《ros入门21讲》学习笔记】08_发布者Publisher的编程实现

目录 说明: 1. 话题模型 图示 说明 2. 实现过程(C) 创建功能包 创建发布者代码(C) 配置发布者代码编译规则 编译并运行 编译 运行 3. 实现过程(Python) 创建发布者代码(…

【JavaEE初阶】 HTTP 请求 (Request)详解

文章目录 🍀序言🎄认识URL🚩URL 基本格式🚩query string🚩关于 URL encode 🌴认识 "方法" (method)🚩GET方法🚩POST 方法🚩 GET 和 POST 的区别 🎋…

云服务器-从零搭建前后端服务(自动化部署、数据库)

云服务器-从零搭建前后端服务(自动化部署、数据库) 免密登陆 第一步就是能免密快速登录到服务器 可以直接使用 FinalShell、MobaXterm 或 XShell 等进行连接 如下方法是直接用命令行操作 安装 Remote - SSH 插件,即可在 VSCode 中进行配置…