当前位置: 首页 > news >正文

一二三应用开发平台应用开发示例——概述、应用开发示例简介及创建前后端模块

概述

对于应用开发平台的核心基石——系统管理模块,我精心撰写了一份详尽的说明手册。该手册旨在从使用者的角度出发,不仅全面阐述系统的各项属性和功能,更着重强调使用过程中的注意事项和最佳实践。

在手册的编写过程中,我特别注重解释每个设计背后的原因,以及这些设计所带来的优点和可能存在的局限。这样做的目的是为了让使用者能够更深入地理解平台的设计理念,从而更快地掌握使用方法,遵循平台的设计原则,并充分发挥平台的潜力。

为了更直观地展示如何基于平台进行业务应用开发,我将以一个真实的业务系统为例进行详细说明。在这个过程中,我们将涵盖从新增前后端功能模块,到通过低代码配置实体、模型、视图,再到生成库表和代码的全过程。此外,我们还将讨论如何配置权限和菜单,以及如何使用数据字典等辅助功能。

值得一提的是,在平台生成的代码基础上,我们还将指导使用者如何进行前端界面的调整和后端业务逻辑的实现。这将有助于使用者更好地发挥平台的灵活性,根据实际需求进行定制化的开发。

通过这份手册的指引,我相信使用者将能够快速上手应用开发平台,充分利用平台提供的各项功能,实现高效、稳定的业务应用开发。同时,遵循最佳实践也将有助于发挥平台的最大价值,提升整体的开发效率和质量。

示例简介
应用名称:一二三文档管理系统
应用简介: 企事业单位一站式文档管理系统,让组织内文档管理有序,协作高效、安全可控
设计文档:csdn专栏
开源地址:Gitee
开源协议:MIT

强烈建议您在继续阅读后文之前,先浏览一下系统整体介绍和系统设计部分的内容。这将有助于您对整个系统有一个直观的了解,从而更好地掌握如何运用平台来实现业务应用。通过先了解整体架构和设计思路,您将能够更顺利地理解后续的操作步骤和最佳实践,进而充分发挥平台的潜力,实现高效、稳定的业务应用开发。

创建后端模块

拷贝新增

拷贝项目中的platform-boot-starter-demo模块,并将其重命名为abc-edoc,是一个高效且实用的方法。选择这种拷贝而非使用spring.io向导新建Spring Boot模块的方式,主要是出于以下考虑:

首先,platform-boot-starter-demo模块本身就是一个现成的、基于开发平台实现的业务系统模拟。这个模块直接为我们提供一个良好的起点。通过拷贝这个模块并重命名,我们可以快速获得一个具备相似结构和功能的新模块,大大减少了从零开始搭建的时间和精力。

其次,拷贝方式允许我们在已有的基础上进行微调,以满足新模块abc-edoc的具体需求。这意味着我们可以直接利用platform-boot-starter-demo中的现有配置和代码,然后针对新模块的特性进行必要的修改和扩展。这种方式不仅提高了开发效率,还能确保新模块与原始模块在结构和功能上保持一致性。

相比之下,使用spring.io向导新建Spring Boot模块虽然也能创建一个新的项目结构,但需要我们手动进行大量的配置和代码编写工作。这种方式虽然提供了更大的灵活性,但在面对类似platform-boot-starter-demo这样已经具备完善配置的模块时,显然不是最高效的选择。

因此,综合考虑时间效率、代码复用和一致性等因素,我们选择通过拷贝并重命名platform-boot-starter-demo模块的方式来新增abc-edoc模块。

调整配置

虽然拷贝的模式减轻了配置工作,但免不了有一点相关工作需要调整,具体如下:

修改模块pom文件

<artifactId>abc-edoc</artifactId>
<name>abc-edoc</name>  
<version>1.0.0</version>
<description>基于开发平台实现的文档管理系统</description>

修改项目pom文件

将新加的模块edoc放到项目模块下

<modules><module>platform-common</module><module>platform-system</module><module>platform-framework</module><module>platform-support</module><module>platform-entity-config</module><module>platform-workflow</module><module>platform-businessflow</module><module>platform-boot-starter</module><module>platform-boot-starter-demo</module><module>platform-cip-common</module><module>platform-cip-api</module><module>platform-cip-message</module><module>platform-cip-manage</module><module>platform-boot-starter-oss</module><module>platform-boot-starter-scheduler</module><module>platform-boot-starter-mail</module><module>platform-boot-starter-notification</module><!--文档管理系统--><module>abc-edoc</module>
</modules>

修改SpringBoot启动类

将启动类PlatformBootApplication重命名为EdocBootApplication。

编译运行

使用maven刷新项目引用,然后执行clean和install,完成编译工作。
启动项目,测试前端可以正常访问后端服务完成登录及其他功能。
此时新建的文档管理系统模块相当于替代了原来的platform-boot-starter-demo模块功能。
至此,完成了文档管理系统的后端模块搭建工作。

创建前端模块

平台的前端目录是platform-web,在src\modeles目录下存放各业务模块。

拷贝新增

为了提升效率,前端模块预置了一个模板,位于src\modules\template,拷贝该目录后,重命名为edoc。

调整配置

模块调整

api目录下的index,将模板内容调整为实际的edoc模块和folder实体

import { COMMON_METHOD } from '@/constant/common'
import request from '@/config/axios'const moduleName = 'edoc'// 文件夹
export const folder = Object.assign({}, COMMON_METHOD, {serveUrl: '/' + moduleName + '/' + 'folder' + '/'
})

项目调整

需要将新增的模块,通过配置加入到项目中,具体如下:
添加api,对应文件src\api\index.ts

import * as system from '@/modules/system/api'
import * as support from '@/modules/support/api'
import * as entityconfig from '@/modules/entityconfig/api'
import * as cip from '@/modules/cip/api'
import * as scheduler from '@/modules/scheduler/api'
import * as notification from '@/modules/notification/api'
import * as workflow from '@/modules/workflow/api'
import * as businessflow from '@/modules/businessflow/api'
import * as edoc from '@/modules/edoc/api'
export default {system,support,entityconfig,cip,scheduler,notification,workflow,businessflow,// 文档管理系统edoc
}

添加常量,对应文件src\constant\index.ts

import * as system from '@/modules/system/api'
import * as support from '@/modules/support/api'
import * as entityconfig from '@/modules/entityconfig/api'
import * as cip from '@/modules/cip/api'
import * as scheduler from '@/modules/scheduler/api'
import * as notification from '@/modules/notification/api'
import * as workflow from '@/modules/workflow/api'
import * as businessflow from '@/modules/businessflow/api'
import * as edoc from '@/modules/edoc/api'
export default {system,support,entityconfig,cip,scheduler,notification,workflow,businessflow,// 文档管理系统edoc
}

配置路由转发,对应文件vite.config.ts

server: {port: 4000,proxy: {//  系统管理模块'/system': {target: env.VITE_BASE_URL,changeOrigin: true},//  实体配置模块'/entityconfig': {target: env.VITE_BASE_URL,changeOrigin: true},//  接口平台模块'/cip': {target: env.VITE_BASE_URL,changeOrigin: true},//  业务支撑模块'/support': {target: env.VITE_BASE_URL,changeOrigin: true},//  任务调度模块'/scheduler': {target: env.VITE_BASE_URL,changeOrigin: true},//  系统通知模块'/notification': {target: env.VITE_BASE_URL,changeOrigin: true},//  工作流模块'/workflow': {target: env.VITE_BASE_URL,changeOrigin: true},//  业务流程模块'/businessflow': {target: env.VITE_BASE_URL,changeOrigin: true},//  文档管理系统'/edoc': {target: env.VITE_BASE_URL,changeOrigin: true}}
}

开发平台资料

平台名称:一二三应用开发平台
平台简介:企业级通用低代码应用开发平台,免费全开源可商用
设计资料:csdn专栏
开源地址:Gitee
开源协议:MIT

应用系统资料

应用名称:一二三文档管理系统
应用简介: 企事业单位一站式文档管理系统,让组织内文档管理有序,协作高效、安全可控
设计文档:csdn专栏
开源地址:Gitee
开源协议:MIT

如果您在阅读本文时获得了帮助或受到了启发,希望您能够喜欢并收藏这篇文章,为它点赞~
请在评论区与我分享您的想法和心得,一起交流学习,不断进步,遇见更加优秀的自己!

相关文章:

一二三应用开发平台应用开发示例——概述、应用开发示例简介及创建前后端模块

概述 对于应用开发平台的核心基石——系统管理模块&#xff0c;我精心撰写了一份详尽的说明手册。该手册旨在从使用者的角度出发&#xff0c;不仅全面阐述系统的各项属性和功能&#xff0c;更着重强调使用过程中的注意事项和最佳实践。 在手册的编写过程中&#xff0c;我特别…...

springboot+minio+kkfileview实现文件的在线预览

在原来的文章中已经讲述过springbootminio的开发过程&#xff0c;这里不做讲述。 原文章地址&#xff1a; https://blog.csdn.net/qq_39990869/article/details/131598884?spm1001.2014.3001.5501 如果你的项目只是需要在线预览图片或者视频那么可以使用minio自己的预览地址进…...

HTML5+CSS3小实例:粘性文字的滚动效果

实例:粘性文字的滚动效果 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-sca…...

Java 关于抽象 -- Java 语言的抽象类、接口和函数式接口

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 008 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进一步完善自己对整个 Java 技术体系来充实自…...

用 Notepad++ 写 Java 程序

安装包 百度网盘 提取码&#xff1a;6666 安装步骤 双击安装包开始安装。 安装完成&#xff1a; 配置编码 用 NotePad 写 Java 程序时&#xff0c;需要设置编码。 在 设置&#xff0c;首选项&#xff0c;新建 中进行设置&#xff0c;可以对每一个新建的文件起作用。 Note…...

malloc brk mmap

malloc 是一个库函数&#xff0c;通常在 C 标准库中实现&#xff0c;用于动态内存分配。malloc 的具体实现可能因库、操作系统和平台而异&#xff0c;但通常它会与底层操作系统提供的内存管理功能进行交互。 对于大多数现代操作系统&#xff08;如 Unix、Linux、Windows 等&am…...

java多线程相关概念

在Java多线程编程中&#xff0c;有几个关键的术语需要理解&#xff1a; 1.线程(Thread)&#xff1a;线程是操作系统能够进行运算调度的最小单位&#xff0c;它被包含在进程之中&#xff0c;是进程中的实际运作单位。 2.进程(Process)&#xff1a;进程是系统进行资源分配和调度…...

【html】简单网页模板源码

大家每一次在写网页的时候会不会因为布局而困扰今天就给大家带来一个我自己亲自编写的网页的基本的模板大家可以直接去利用&#xff0c;大家也可以利用自己的想法去做空间的美化和完善。 源码&#xff1a; html: <!DOCTYPE html> <html lang"zh"><…...

借助Historian Connector + TDengine,打造工业创新底座

在工业自动化的领域中&#xff0c;数据的采集、存储和分析是实现高效决策和操作的基石。AVEVA Historian (原 Wonderware Historian) 作为领先的工业实时数据库&#xff0c;专注于收集和存储高保真度的历史工艺数据。与此同时&#xff0c;TDengine 作为一款专为时序数据打造的高…...

51单片机-实机演示(LED点阵)

目录 前言: 一.线位置 二.扩展 三.总结 前言: 这是一篇关于51单片机实机LED点阵的插线图和代码说明.另外还有一篇我写的仿真的连接在这:http://t.csdnimg.cn/ZNLCl,欢迎大家的点赞,评论,关注. 一.线位置 接线实机图. 引脚位置注意: 1. *-* P00->RE8 P01->RE7 …...

STM32硬件接口I2C应用(基于MP6050)

目录 概述 1 STM32Cube控制配置I2C 1.1 I2C参数配置 1.2 使用STM32Cube产生工程 2 HAL库函数介绍 2.1 初始化函数 2.2 写数据函数 2.3 读数据函数 3 认识MP6050 3.1 MP6050功能介绍 3.2 加速计测量寄存器 ​编辑3.3 温度计量寄存器 3.4 陀螺仪测量寄存器 4 MP60…...

基于JSP的贝儿米幼儿教育管理系统

开头语&#xff1a; 你好呀&#xff0c;我是计算机学长猫哥&#xff01;如果您对本系统感兴趣或者有相关需求&#xff0c;文末可以找到我的联系方式。 开发语言&#xff1a; Java 数据库&#xff1a; MySQL 技术&#xff1a; JSP技术 工具&#xff1a; IDEA/Eclipse、…...

数字化与文化交融,树莓集团助力园区文化升级

树莓集团在产业园运营领域建设了特色空间布局&#xff0c;包括产业实训基地、产业办公中心、业务资源平台、产学研中心、数字资产空间、双创孵化空间、产业实验室和人才项目转化中心等八大板块&#xff0c;共同构建了一个全面而深入的产业支撑体系&#xff0c;为园区文化建设提…...

【原创课程】如何制作安装板

具体步骤如下: 第一步:新建页类型为“安装板布局图(交互式)”并修改页描述为“安装板布局图”。 第二步:新建安装板 第三步:设置图纸上符号元件的部件,双击符号,弹出常规设备窗口,点击部件进行选择 第四步:打开2D安装板导航器,将图纸中的设备拖拽到安装板上 第五步…...

简单聊聊【java.util.Stream】,更新中

public class Main {public static void main(String[] args) {List<Integer> numbers Arrays.asList(1, 2, 3, 4, 5, 6); // 原始容器&#xff1a;java.util.Arrays.ArrayList#ArrayList// 创建一个 Stream&#xff0c;过滤出偶数&#xff0c;并打印它们numbers.str…...

GIS之arcgis系列07:conda环境下安装arcpy环境

首先将python27环境下的“Desktop10.8.pth”拷贝到anaconda环境下。 路径如下&#xff08;仅参考&#xff09;&#xff1a; C:\Python27\ArcGIS10.8\Lib\site-packages\Desktop10.8.pth D:\Anaconda\Lib\site-packages 在anaconda prompt中穿创建一个新环境 conda create -…...

容器运行nslookup提示bash: nslookup: command not found【笔记】

在容器中提示bash: nslookup: command not found&#xff0c;表示容器中没有安装nslookup命令。 可以通过以下命令安装nslookup&#xff1a; 对于基于Debian/Ubuntu的容器&#xff0c;使用以下命令&#xff1a; apt-get update apt-get install -y dnsutils对于基于CentOS/R…...

解析 Spring 框架中的三种 BeanName 生成策略

在 Spring 框架中&#xff0c;定义 Bean 时不一定需要指定名称&#xff0c;Spring 会智能生成默认名称。本文将介绍 Spring 的三种 BeanName 生成器&#xff0c;包括在 XML 配置、Java 注解和组件扫描中使用的情况&#xff0c;并解释它们如何自动创建和管理 Bean 名称。 1. Be…...

细说ARM MCU的串口接收数据的实现过程

目录 一、硬件及工程 1、硬件 2、软件目的 3、创建.ioc工程 二、 代码修改 1、串口初始化函数MX_USART2_UART_Init() &#xff08;1&#xff09;MX_USART2_UART_Init()串口参数初始化函数 &#xff08;2&#xff09;HAL_UART_MspInit()串口功能模块初始化函数 2、串口…...

000-基于sklearn的机器学习入门:工作环境搭建与配置

本专栏将介绍基于Scikit-learn(简称sklearn)的机器学习入门知识。包括但不一定限于&#xff0c;机器学习基本知识、sklearn库简介&#xff0c;基于Sklearn库的机器学习实践。 这是本专栏的第000篇&#xff0c;将介绍如何安装和配置sklearn环境&#xff0c;不仅包括Sklearn库的…...

vLLM-v0.17.1在新闻聚合平台的应用:热点事件摘要生成服务

vLLM-v0.17.1在新闻聚合平台的应用&#xff1a;热点事件摘要生成服务 1. 技术背景与需求场景 新闻聚合平台每天需要处理海量新闻内容&#xff0c;如何快速生成准确、简洁的热点事件摘要成为关键挑战。传统方法依赖人工编辑或简单规则提取&#xff0c;效率低下且质量参差不齐。…...

OpenClaw对接ollama模型:GLM-4.7-Flash接口配置详解

OpenClaw对接ollama模型&#xff1a;GLM-4.7-Flash接口配置详解 1. 为什么选择本地ollama部署GLM-4.7-Flash 去年我在尝试构建个人自动化工作流时&#xff0c;发现公有云API调用不仅费用高昂&#xff0c;还存在隐私顾虑。直到发现ollama这个轻量级模型运行框架&#xff0c;配…...

零基础掌握Degrees of Lewdity本地化工具:开源项目中文适配方案全攻略

零基础掌握Degrees of Lewdity本地化工具&#xff1a;开源项目中文适配方案全攻略 【免费下载链接】Degrees-of-Lewdity-Chinese-Localization Degrees of Lewdity 游戏的授权中文社区本地化版本 项目地址: https://gitcode.com/gh_mirrors/de/Degrees-of-Lewdity-Chinese-Lo…...

清音刻墨Qwen3快速上手:拖拽上传,自动生成,一键下载

清音刻墨Qwen3快速上手&#xff1a;拖拽上传&#xff0c;自动生成&#xff0c;一键下载 1. 为什么选择清音刻墨Qwen3&#xff1f; 视频字幕制作一直是内容创作者的痛点。传统方法要么需要逐字听写&#xff0c;要么使用普通语音识别工具生成文字后&#xff0c;还得手动调整时间…...

AI科学发现新范式!NSR综述知识图谱应用全解(非常详细),从入门到精通,收藏这一篇就够了!

在生物、化学、材料等数据密集型科学领域&#xff0c;海量实验数据与文献知识不断积累&#xff0c;但这些知识往往分散在不同数据库与研究论文中&#xff0c;难以被系统整合与有效利用。科学知识图谱&#xff08;Scientific Knowledge Graphs, SciKGs&#xff09;通过结构化方式…...

小白也能学会:Qwen3-ForcedAligner字幕生成,操作简单效果专业

小白也能学会&#xff1a;Qwen3-ForcedAligner字幕生成&#xff0c;操作简单效果专业 1. 为什么你需要这个字幕生成工具&#xff1f; 视频创作者和内容生产者经常面临一个共同难题&#xff1a;如何高效地为视频添加精准的字幕。传统手动添加字幕不仅耗时费力&#xff0c;而且…...

如何用Mojo实现高效A/B测试:算法效果评估与迭代优化完整指南

如何用Mojo实现高效A/B测试&#xff1a;算法效果评估与迭代优化完整指南 【免费下载链接】mojo Mojo编程语言 项目地址: https://gitcode.com/GitHub_Trending/mo/mojo Mojo编程语言为开发者提供了强大的性能和灵活性&#xff0c;特别适合构建需要高效算法评估的系统。本…...

Fluent UI自定义Hook终极指南:10个常见使用场景详解

Fluent UI自定义Hook终极指南&#xff1a;10个常见使用场景详解 【免费下载链接】fluentui 项目地址: https://gitcode.com/GitHub_Trending/of/fluentui Fluent UI作为微软推出的企业级UI组件库&#xff0c;其自定义Hook体系为开发者提供了高效处理状态管理、生命周期…...

在CentOS 7上远程跑3D应用:保姆级TurboVNC+VirtualGL配置与GPU调用验证

在CentOS 7上构建高性能远程3D工作站&#xff1a;TurboVNC与VirtualGL深度配置指南 当工程师需要远程操控配备NVIDIA GPU的服务器运行Maya、Paraview或TensorBoard等图形密集型应用时&#xff0c;直接使用传统VNC会遇到3D渲染性能低下的问题。本方案通过TurboVNC的高效压缩传输…...

AI辅助开发:如何优化CiteSpace关键词聚类图谱线条的可视化效果

作为一名经常和文献计量数据打交道的开发者&#xff0c;我深知CiteSpace这类工具生成的关键词共现图谱有多“劝退”。密密麻麻的线条交织在一起&#xff0c;像一团理不清的毛线&#xff0c;关键信息被淹没在视觉噪音里。传统的力导向布局算法在处理大规模、高密度网络时&#x…...