git项目推荐 maku-boot低代码开发项目推荐

news2024/11/14 15:14:11

介绍项目   

项目仓库地址 官方gitee,这是他的官网

用于做二次开发的脚手架在合适不过 

后端框架采用

springboot3,security6,Mybatisplus2,jdk,各种oss的集合,判断ip地址等监控,用来作为源码学习和二次开发都是很好的教材

代码基本都是mvc的二次封装,便于理解

代码模块

启动类模块只包含启动类,各个模块,业务在进行细分,也有点ddd领域设计的感觉

 前端的二次开发

作为java的程序员,看懂后端很简单,对于前端的二次开发需要做一些笔记


---

 视图管理

对应views下的路由目录 比如这里的sys/user/index

对应sys/user/index.vue组件

便于二次开发,建议路由采用统一规

可以查看路由源码 其中路由守卫 已经写好

// 加载vue组件
const layoutModules = import.meta.glob('/src/views/**/*.vue')

前后端交互

每个视图中都可以发现存在这么一个导入的函数

封装接口 信息,然后把信息传给生命周期的hook沟子

该生命周期一旦载入进行挂载数据 便开始进行初始化

比如当前菜单 页面是没有分页的

所以组件内部 将所需要的crud参数封装传递给hook.ts 默认是开启分页查询的,所以需要特定参数

这里传递的是ISPpage=false 所以没有page 和limit参数 

对应后端

比如user页面需要分页

查看组件内部 参数解析

传递了queryform 

合并自定义的参数和默认参数


参数中的primarykey  是当表格操作时定义主键字段

其中删除api,如果手动传递id,就是删除一个,否则需要更改selections 参数,装载id集合

非通用生命周期的api 写在api目录 比如导出日志

配置开发后端地址

导入的元数据配置

嵌入微服务,因为这种管理系统可以用来做微服务这里说几个注意的点

因为最后服务管理会调用各个服务 原生的项目可以发现接口都是sys开头的 那么统一向网关发送请求,并且不过滤第一个断言字段网关

 网关配置

为管理端提供统一入口  这里网关对进入服务的请求做了统一跨域处理,所以需要把boot中的跨域过滤器注释

spring:
  cloud:
    gateway:
      # 。。。
      globalcors: # 全局的跨域处理
        # 解决options请求被拦截问题
        add-to-simple-url-handler-mapping: true
        corsConfigurations:
          '[/**]':
            allowedOrigins: # 允许哪些网站指明端口的跨域请求
              - "http://localhost:3000"
            allowedMethods: # 允许的跨域ajax的请求方式
              - "GET"
              - "POST"
              - "DELETE"
              - "PUT"
              - "OPTIONS"
            allowedHeaders: # 允许的头部信息
              - "DNT"
              - "User-Agent"
              - "X-Requested-With"
              - "If-Modified-Since"
              - "Cache-Control"
              - "Content-Type"
              - "Range"
              - "Authorization"
            exposedHeaders: # 允许暴露给前端的头部信息
              - "Content-Length"
              - "Content-Range"
            maxAge: 360000 # 这次跨域检测的有效期

      routes: # 网关路由配置
        # 路由id,自定义,只要唯一即可
        - id: userMember-service 
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          # 路由的目标地址 lb就是负载均衡(loadbalance),后面跟服务名称
          uri: lb://usermember-application
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            # 这个是按照路径匹配,只要以/user/开头就符合要求
            - Path=/user/**
          filters: 
            - StripPrefix=1 
        - id: admin-service 
          # uri: http://127.0.0.1:8081 # 路由的目标地址 http就是固定地址
          # 路由的目标地址 lb就是负载均衡(loadbalance),后面跟服务名称
          uri: lb://admin-boot
          predicates: # 路由断言,也就是判断请求是否符合路由规则的条件
            # 这个是按照路径匹配,只要以/user/开头就符合要求
            - Path=/sys/**

因为这里已经对跨域做处理,所以需要把后端关于关于跨域的配置删除,否则会报错。比如

我的项目中,就根据maku二改将校验身份的过滤器和跨域配置删除,全部放在commom模块,其他模块对他引用即可,这样就可以做到统一配置跨域和鉴权

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

初学JavaWeb开发总结

0 什么是Web开发 Web: 全球广域网,又称万维网(www World Wide Web),能够通过浏览器访问的网站。 Web开发,就是开发网站的,如:淘宝、京东等等。 1 网站的工作流程 流程: 浏览器先向前端服务器请求前端资…

李修思将出席工业循环水节水减排提标降碳新技术推广及应用

演讲嘉宾:李修思 技术总监 山东海能环境技术有限公司 演讲题目:工业循环水节水减排提标降碳新技术推广及应用 会议简介 “十四五”规划中提出,提高工业、能源领城智能化与信息化融合,明确“低碳经济”新的战略目标,…

Axure导入使用ElementUI组件库

在使用Axure进行UI设计时,我们可能导入ElementUI组件库或者一些其他的元件库,其实非常简单,如果你还没有装好Axure可以先安装好AxureRP9汉化版,接下来,我们以AxureRP9汉化版来演示如何导入ElementUI组件库。 第一步&a…

搭建LNMP环境并搭建论坛和博客

目录 一、LNMP架构原理 二、编译安装Nginx 三、编译安装MySQL 四、编译安装PHP 五、配置Nginx支持PHP解析 六、安装论坛 七、安装博客 一、LNMP架构原理 LNMP架构,是指在Linux平台下,由运行Nginx的web服务器,运行PHP的动态页面解析程序…

光伏储能MPPT控制系统如何进行浪涌静电保护?

MPPT(Maximum Power Point Tracking)是太阳能电池板光伏发电系统中重要的一种控制技术。MPPT控制器能够实时侦测太阳能板的发电电压,并追踪最高电压电流值(VI),使系统以最大功率输出对蓄电池充电&#xff0…

Sophon AutoCV推动AI应用从模型生产到高效落地

随着技术市场和应用方向的逐渐成熟,人工智能与各行各业的结合和落地逐渐进入了深水区。 虽然由于行业规模化和应用普及度的限制,人工智能在“传统”行业的落地不如消费互联网行业,但是借助人工智能为“传统”行业的发展注入新能量一直是相关…

5_怎么看原理图之协议类接口之NAND Flash笔记

NAND Flash原理图: 由NAND Flash的原理图可以看出,做为一个存储芯片,只有I/O引脚,并没有地址引脚,怎么传地址?遵循一定的规范,先通过LDATA把地址传出去,再传数据。具体的需要查看芯片…

Premiere Pro 2022

Premiere Pro 2022是一款功能强大的视频编辑软件,适用于电影、电视和网络等各种类型的视频制作。它提供了丰富的剪辑、调色、音效和字幕等工具,帮助用户快速完成视频素材的剪辑和后期处理。同时,Premiere Pro 2022还支持多平台编辑和与其他Ad…

#LLM入门|Prompt#2.2_ AI 应用开发的范式_Language_Models,the_Chat_Format_and_Tokens

在本章中,我们将和您分享大型语言模型(LLM)的工作原理、训练方式以及分词器(tokenizer)等细节对 LLM 输出的影响。 我们还将介绍 LLM 的提问范式(chat format),这是一种指定系统消息…

大象如何转身-苹果放弃10年领域

1.苹果放弃造车 汽车作为普通家庭最贵的消费品之一,近些年很多手机厂商也纷纷下场造车,特别是去年华为、小米不约而同举行发布会。对于手机市场已经逐渐稳定了,这些手机大厂又开始瞄准汽车制造。加上之前燃油车厂商,汽车这个市场…

(二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布

前言 本节内容会介绍如何使用Docker Pipeline插件实现docker项目的pipeline流水线项目的可持续化集成发布,在开始本节内容之前,我们要先搭建好docker环境,以及镜像本地存储仓库docker harbor,关于docker和docker harbor的安装,可查看作者往期博客内容。 正文 ①安装Doc…

【uniapp】小程序自定义一个通用的返回按钮组件

左边箭头,右边文字可以自定义,但是不要太长,太长可以自己改 .back的width值,改宽一点。 用这个组件的时候首先要在pages.json里把导航栏变成自定义的: ,{"path" : "pages/test/test","style&…

力扣138.随机链表的复制

给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 n…

刘志雄:新产品市场+新智造模式,构建“声音+”产业创新生态 | 演讲嘉宾公布

随着科技的飞速发展,新技术、新的应用场景不断涌现,也影响着“声音”产业未来的发展方向。如何应对市场变化,满足市场的多样化需求?如何应用新产品市场、智造新模式去构造“声音”产业创新生态呢?请到GAS2024一探究竟。…

阿里云突发:史上最大力度云服务器降价,优惠价格表来了

2024年阿里云百款产品直降,平均降幅20%,不只是云服务器,也包括云数据库,云数据库涉及产品RDS(MySQL、PostgreSQL、MariaDB)、Redis社区版、MongoDB、ClickHouse社区兼容版。阿里云百科aliyunbaike.com分享阿…

Python爬虫——Urllib库-1

这几天都在为了蓝桥杯做准备,一直在刷算法题,确实刷算法题的过程是及其的枯燥且枯燥的。于是我还是决定给自己找点成就感出来,那么Python的爬虫就这样开始学习了。 注:文章源于观看尚硅谷爬虫视频后笔记 目录 Urllib库 基本使…

【电路笔记】-RC网络-RC积分器

RC积分器 文章目录 RC积分器1、概述2、RC积分器3、电容电压4、单脉冲 RC 积分器5、RC积分器示例6、RC 积分器作为正弦波发生器7、总结RC 积分器是一个串联的 RC 网络,可产生与积分的数学过程相对应的输出信号。 1、概述 对于无源 RC 积分器电路,输入连接到电阻,而输出电压取…

项目风险管理的前提是对风险的认知

大家好,我是不会魔法的兔子, 一枚北京执业律师,创建[项目管理者的法小院儿],持续从法律的角度分享项目管理中的风险问题及预防,让项目管理者能够提早发现与解决项目执行过程中的风险,同时欢迎大家一起交流…

渗流监测站技术原理

【TH-SL1】渗流监测站的技术原理主要基于传感器技术和数据处理技术,用于实时监测和分析地下水或土壤中的渗流情况。渗流监测站通常包括多种传感器,如水位传感器、温度传感器、电导率传感器等,用于测量地下水或土壤中的水位、温度、电导率等参…

ICLR 2024|ReLU激活函数的反击,稀疏性仍然是提升LLM效率的利器

论文题目: ReLU Strikes Back: Exploiting Activation Sparsity in Large Language Models 论文链接: https://arxiv.org/abs/2310.04564 参数规模超过十亿(1B)的大型语言模型(LLM)已经彻底改变了现阶段人工…