可以在线看黄的网站-可以免费在线看黄的网站-可以免费看污视频的网站-可以免费看毛片的网站-欧美电影免费看大全-欧美电影免费

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

diboot 的設(shè)計(jì)理念

Web 開發(fā)需要一個(gè)普適的基礎(chǔ)框架,把復(fù)雜的問題簡單化,最好還能做到更佳性能,規(guī)避常見的坑

程序員很難被替代,但程序員應(yīng)該聚焦于數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、業(yè)務(wù)實(shí)現(xiàn)、難點(diǎn)解決,重復(fù) CRUD 沒啥長進(jìn)

低代碼是未來的趨勢,CRUD 類重復(fù)有規(guī)律的工作是可以被自動化甚至被省掉的

diboot 主要技術(shù)棧

  • 后端 Java 關(guān)系數(shù)據(jù)庫,跟緊 Spring 體系 (Spring Boot、Spring Cloud)
  • ORM 站隊(duì) Mybatis,通用 Mappe r框架選用 mybatis-plus
  • 權(quán)限: spring boo 版本使用 shiro JWT;spring cloud 版本使用 spring security oauth2
  • 前后分離,前端選型 Vue,支持 ElementUI 和 Antd vue pro

基于diboot-core的CRUD和常規(guī)關(guān)聯(lián)的功能實(shí)現(xiàn),代碼量比傳統(tǒng)Mybatis項(xiàng)目減少80% ,且性能更好更易維護(hù)。

diboot 基礎(chǔ)組件

1、 diboot-core: 精簡優(yōu)化內(nèi)核:寫的更少,性能更好

主要特性:

  • 單表CRUD無SQL
  • 關(guān)聯(lián)綁定無SQL(注解自動綁定)
  • 數(shù)據(jù)字典無SQL(注解自動綁定)
  • 跨表查詢無SQL(自動構(gòu)建QueryWrapper與查詢)
  • BaseService擴(kuò)展增強(qiáng),支持常規(guī)的單表及關(guān)聯(lián)開發(fā)場景接口
  • 其他常用工具類、狀態(tài)碼、異常處理的更優(yōu)實(shí)踐封裝

基于diboot-core的CRUD和常規(guī)關(guān)聯(lián)的功能實(shí)現(xiàn),代碼量比傳統(tǒng)Mybatis項(xiàng)目減少80% ,且性能更好更易維護(hù)。

2、IAM 身份認(rèn)證基礎(chǔ)組件 及 配套VUE前端框架(diboot-antd-admin、diboot-element-admin)

  • 開箱即用的RBAC角色權(quán)限模型與預(yù)置組織人員崗位模型
  • 基于無狀態(tài)token的認(rèn)證授權(quán),支持刷新token
  • 簡化的BindPermission注解,支持兼容shiro的簡化權(quán)限配置與自動鑒權(quán)
  • 自動提取需要鑒權(quán)的后端接口, 借助前端功能方便配置菜單按鈕權(quán)限
  • 無縫適配redis,引入redis依賴即可啟用shiro的redis緩存
  • 支持基于注解的數(shù)據(jù)權(quán)限實(shí)現(xiàn)、簡化的Log注解記錄操作日志等
  • 支持靈活的擴(kuò)展能力(擴(kuò)展多種登錄方式、靈活替換用戶實(shí)體類、自定義緩存等)

3、diboot-File 文件相關(guān)處理組件

  • EasyExcel輕量封裝,支持Java注解校驗(yàn)與@ExcelBind*注解實(shí)現(xiàn)字典及關(guān)聯(lián)字段的name-value轉(zhuǎn)換,并提供完善的校驗(yàn)錯(cuò)誤提示
  • 文件存儲接口化,預(yù)置本地存儲,簡單擴(kuò)展OSS、分布式存儲等實(shí)現(xiàn)
  • 封裝常用的文件上傳下載、圖片壓縮水印等常用處理

4、diboot-scheduler 定時(shí)任務(wù)組件

  • Quartz定時(shí)任務(wù)統(tǒng)一管理及日志的最佳實(shí)踐封裝
  • @CollectThisJob注解提供定時(shí)任務(wù)定義,自動收集供前端選擇

5、diboot-message 消息通知組件

  • 通用的消息模板&模板變量的設(shè)計(jì)方案
  • 支持多通道的消息通知發(fā)送

6、diboot-mobile 移動端組件

  • 提供了配套的 diboot-mobile-ui ,內(nèi)置了多種登錄方式
  • 支持 賬號密碼登錄、微信小程序登錄(自動注冊)微信公眾號登錄(自動注冊)

diboot-core (diboot-core-starter) 使用步驟

  1. 引入依賴

<dependency> <groupId>com.diboot</groupId> <artifactId>diboot-core-spring-boot-starter</artifactId> <version>{latestVersion}</version></dependency>

Gradle:

compile("com.diboot:diboot-core-spring-boot-starter:{latestVersion}")

  1. 配置參數(shù)(數(shù)據(jù)源)

#datasource configspring.datasource.url=jdbc:mysql://localhost:3306/diboot_example?characterEncoding=utf8&serverTimezone=GMT+8spring.datasource.username=dibootspring.datasource.password=123456spring.datasource.hikari.maximum-pool-size=5spring.datasource.hikari.driver-class-name=com.mysql.cj.jdbc.Driver-------------------------------------------------------------------------#diboot-core-spring-boot-starter的可選參數(shù)配置:# 是否初始化sql,默認(rèn)true,初始化之后(或非開發(fā)環(huán)境)可以改為false關(guān)閉檢測diboot.core.init-sql=false

  1. 配置config類

diboot-core-starter 默認(rèn)預(yù)置了 mybatis-plus 的分頁配置(使用 mybatis-plus 3.4.x的 MybatisPlusInterceptor 最新配置方式)。如果您依賴的是core-starter,則無需再次配置 mybatis-plus 的分頁。

如果需要添加其他Interceptor,則需要重新定義 MybatisPlusInterceptor。示例如下:

@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return interceptor;}//同時(shí)core-starter中也默認(rèn)配置了HttpMessageConverters,如果需要更改默認(rèn)配置, 則需要在配置類中重新定義HttpMessageConverters。@Beanpublic HttpMessageConverters jacksonHttpMessageConverters() { ...}

注意:diboot-core-starter 預(yù)置了默認(rèn)的配置以及字典表相關(guān)的接口實(shí)現(xiàn),如果是老項(xiàng)目中僅依賴 diboot-core(非diboot-core-starter),則還需要將 diboot 的包路徑加入 ComponentScan 中

diboot 新手體驗(yàn)

在 IDE 中克隆 playground 項(xiàng)目

"File -> New -> Project from version control…"菜單打開克隆項(xiàng)目對話框:

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

URL 中輸入如下 playground 項(xiàng)目路徑,指定項(xiàng)目本地路徑(避免中文路徑),點(diǎn)擊 Clone 按鈕 :https://gitee.com/dibo_software/playground.git

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

待克隆完成后,在右側(cè) Maven 視圖中,添加 demo 項(xiàng)目下的 pom.xml

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

準(zhǔn)備數(shù)據(jù)庫后使用 devtools 初始化代碼

1、點(diǎn)擊控制臺中打印出的 URL,進(jìn)入devtools操作頁面。(個(gè)人用戶初次使用需要掃碼)

2、初次啟動 devtools 會提示初始化組件的基礎(chǔ)代碼(為了方便自定義修改,devtools 將controller 等代碼生成到本地項(xiàng)目中)。依次點(diǎn)擊各組件的"生成代碼"按鈕。

SpringBoot版的低代碼開發(fā)平臺,關(guān)聯(lián)無 SQL,性能高10倍!(spring boot 低代碼)

3、打開 demo 目錄下的 java 目錄,將會看到相關(guān)組件的初始化代碼已生成。

注意:如果啟動前端發(fā)現(xiàn)驗(yàn)證碼無法顯示,則需要檢查是否執(zhí)行了這個(gè)步驟并重啟了項(xiàng)目。登錄驗(yàn)證相關(guān)的 controller 需要此步驟中生成

開源地址:

https://gitee.com/dibo_software/diboot

原文鏈接:https://mp.weixin.qq.com/s/XYQ_0w0wtsKcLK0jvkdJIg

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
在線咨詢
分享本頁
返回頂部