中国語 | 英語
Github リポジトリ |コードクラウド リポジトリ |オンラインエクスペリエンス |
Erupt Cloud [分散クラウド構成] | Erupt テナント [マルチテナント]
QQコミュニケーショングループ:836044286
Erupt は、 Java アノテーションを使用してページやバックグラウンド関数 (追加、削除、変更、チェック、権限制御など) を動的に生成するローコードのフルスタック クラスフレームワークです。
フロントエンド コードゼロ、CURD ゼロ、テーブルの自動作成、クラス ファイル 1 つとシンプルなアノテーション構成のみ、エンタープライズ レベルの管理管理バックグラウンドの迅速な開発。
高い拡張性、@DataProxy、カスタム データ ソース、論理削除、LDAP、OSS を自由に拡張する CURD をサポートします。
エンタープライズレベルのミドルエンドおよびバックエンド管理システム向けのフルスタックソリューションを提供し、研究開発サイクルを大幅に短縮し、コアビジネスに集中します。
コードジェネレーターを完全に置き換え、バックエンド管理システムのためのより優れたソリューションを開発します。
2020 年以来、継続的に最適化とアップグレードが行われています。現在、数百の中小企業で使用されており、数千の開発者が関連アプリケーションを開発しています。数百人の開発者が機能提案の提出に参加し、30 人以上の貢献者がコードの提出に参加しました。
自動テーブル作成: テーブル構造は自動的に生成されるため、手動でテーブルを作成する必要はありません。
始めるのは簡単: Spring Bootの基本を理解するだけです
使いやすい: 開発を開始するには、2 つのアノテーション@Eruptと@EruptField を理解するだけで済みます。
コードは簡潔です。必要な.java
ファイルは 1 つだけであり、テンプレート、コントローラー、サービス、および Dao を作成する必要はありません。
強力な機能: 動的条件処理、論理削除、LDAP、カスタムログインロジック、RedisSession、操作ログなど。
複数のデータ ソース: サポート: MySQL、Oracle、SQL Server、 PostgreSQL 、H2、さらにMongoDB
高いスケーラビリティ: カスタム データ ソースの実装、カスタム ログイン ロジック、動的権限管理、ライフ サイクル機能、カスタム OSSをサポートします。
多数のコンポーネント: スライド入力、時間選択、 1対多、画像アップロード、コードエディター、オートコンプリート、ツリー、多対多、マップ、その他23種類のコンポーネント
リッチ表示: 通常のテキスト、 QR コード、リンク、画像、HTML、コード スニペット、iframe、swf など。
低侵入: ほぼすべての関数はアノテーションを中心に展開し、他の Spring Boot 関数やサードパーティ ライブラリの使用には影響しません。
フロントエンドとフロントエンドの分離: バックエンドとフロントエンドを別々にデプロイ可能
レスポンシブレイアウト:PCや携帯電話など様々なスペックのデバイスでの利用に対応
カスタム ページ: カスタム ページ、カスタム ポップアップ レイヤーをサポートし、ネイティブ H5 / Freemarker / Thymeleaf およびその他のレンダリング方法をサポートします。
フロントエンドのゼロコード: フロントエンドのレイアウトは自動的に構築されるため、フロントエンド コードを 1 行も記述する必要はありません。
二次開発は必要ありません。jar パッケージを参照するだけです。
ギットハブ | コードクラウド | |
---|---|---|
バックエンドのソースコード | https://github.com/erupts/erupt | https://gitee.com/erupt/erupt |
フロントエンドのソースコード | https://github.com/erupts/erupt-web | https://gitee.com/erupt/erupt-web |
サンプルコード | https://github.com/erupts/erupt-example | https://gitee.com/erupt/erupt-example |
コード ジェネレーターは近年バックエンド開発の新たな人気となっていますが、本当にバックエンド開発にとって最適なソリューションなのでしょうか?
コード ジェネレーターの本質は、面倒なフロントエンド コードとバックエンド コードを生成することです。一度変更すると、後で生成されるコードをマージするのが困難になります。ただし、これは基本的に 1 回限りの処理です。仕事をしても、解決策は最善ではありません。
ほとんどの場合、バックエンド管理システムを開発するときは、次のような、データ管理のための共通の追加、削除、変更、およびクエリ インターフェイスを作成するだけです。
追記: 噴火は、複雑なページのカスタマイズの定義をサポートしています。詳細については、erup-tpl モジュールを参照してください。
@ Erupt (
name = "简单的例子" ,
power = @ Power ( importable = true , export = true )
)
@ Table ( name = "t_simple" ) //数据库表名
@ Entity
public class Simple extends BaseModel {
@ EruptField (
views = @ View ( title = "文本" ),
edit = @ Edit ( title = "文本" , notNull = true , search = @ Search )
)
private String input ;
@ EruptField (
views = @ View ( title = "数值" , sortable = true ),
edit = @ Edit ( title = "数值" , search = @ Search )
)
private Float number ;
@ EruptField (
views = @ View ( title = "布尔" ),
edit = @ Edit ( title = "布尔" , search = @ Search )
)
private Boolean bool ;
@ EruptField (
views = @ View ( title = "时间" ),
edit = @ Edit ( title = "时间" , search = @ Search ( vague = true ))
)
private Date date ;
@ EruptField (
views = @ View ( title = "滑动条" ),
edit = @ Edit ( title = "滑动条" , type = EditType . SLIDER , search = @ Search ,
sliderType = @ SliderType ( max = 90 , markPoints = { 0 , 30 , 60 , 90 }, dots = true ))
)
private Integer slide ;
@ EruptField (
views = @ View ( title = "下拉选择" ),
edit = @ Edit (
search = @ Search ,
title = "下拉选择" , type = EditType . CHOICE ,
choiceType = @ ChoiceType ( fetchHandler = SqlChoiceFetchHandler . class ,
fetchHandlerParams = "select id,name from e_upms_menu"
)
)
)
private Long choice ;
}
機能的な体験
このインターフェースは大まかには Vue + Ant Design + SSM で作ることができますが、よく見てみると以下のような細かい機能がたくさんあることがわかります。
これらすべてを実装するには、バックエンドのインターフェイスやビジネス ロジックは言うまでもなく、フロントエンドだけでも多くのコードが必要です。
ただし、eruper の使用には30 行のコードしか必要としないことがわかります。
Angular/React/Vue/Jqueryの知識はまったく必要ありません
JavaScript/HTML/CSS の知識は必要ありません
Spring MVC/Mybatis/SQL を知る必要さえありません
Emerge を学習していなくても、ほとんどの構成の役割を推測できるでしょう。すべてのバックグラウンド ページの開発は単純な構成で完了できます。
これは、最も一般的に使用されるページでは、コア ビジネスに集中するためにさまざまなフレームワークやツールを学ぶ必要さえない、最も単純な方法を使用することを目的としています。
従来の Spring Web 開発 | コードジェネレーター | アクセラ | 噴火 | |
ドメインモデル | Javaコード | Javaコード | XML定義 | アノテーション アノテーションの定義 |
DTO | Javaコード | コード生成 | 不要 | 不要 |
ORMマッピング | XML または Java コード | コード生成 | コード生成 | アノテーションの定義 |
データアクセス | インターフェース + 実装 | コード生成 | コード生成 | 組み込み + オンデマンド実装 |
ビジネスロジック | インターフェース + 実装 | コード生成+ロジック調整 | 組み込み + オンデマンド実装 | 組み込み + オンデマンドの @DataProxy 実装 |
プレゼンテーション層MVC | Java コード + ビュー テンプレート | コード生成+ロジック調整 | 不要 | 不要 |
フロントエンド | Java コード以上のもの | コード生成+ロジック調整 | 通常のアプリケーションの開発は不要 | 通常のアプリケーションの開発は不要 |
モバイルディスプレイ効果 | |||
最新の JAR をダウンロードするか、Maven を通じて取得します。
<!--用户权限管理-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-upms</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
<!--接口数据安全-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-security</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
<!--后台WEB界面-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-web</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
詳しい使用手順
erupt
├── erupt - annotation -- 核心注解声明
├── erupt - core -- 核心功能实现
├── erupt - data -- 数据实现包
├── erupt - jpa -- 关系型数据库erupt实现
└── erupt - mongodb -- mongodb数据库erupt实现
├── erupt - job -- 定时任务功能,支持动态定时任务,邮件发送,任务日志等功能
├── erupt - upms -- 用户权限管理
├── erupt - security -- 接口数据安全
├── erupt - web -- 编译后的前端页面
├── erupt - tpl -- 支持在 erupt 中自定义页面,自定义图表,自定义弹出层,模板引擎支持:FreeMarker / Thymeleaf / 原生H5 / Velocity 等
├── erupt - tpl - ui -- 在 erupt-tpl 中可使用的 UI 库
├── ant - design
├── element - ui
└── amis
├── erupt - generator -- 代码生成器,通过配置,生成 erupt 代码段
└── erupt - monitor -- 基于erupt实现的服务监控
erupt - pro
├── erupt - dataflow -- 基于erupt实现的数据流(构思中)
├── erupt - workflow -- 基于erupt实现的工作流(构思中)
├── erupt - tenant -- 基于erupt实现的SaaS云多租户(开发中,面向企业用户)
└── erupt - bi -- 通过 sql 加 js 混编实现动态报表,支持:多数据源、自定义函数、图表开发等(面向企业用户)
erupt - site -- Erupt 官方网站 https://github.com/erupts/erupt-site
erupt - web -- Erupt 前端源码 https://github.com/erupts/erupt-web
バックエンド: Java 8、Spring Boot、ScriptEngine、SpEL、アノテーション、JDBC、Reflect、JPA、Hibernate、Quartz、Gson、Lombok、POI...
フロントエンド: JavaScript、H5、MVVM、ルーター、Angular CLI、Angular、NG-ZORRO、NG-ALAIN、G2Plot、RxJS、TypeScript、Less...
デモのアドレス: https://www.erupt.xyz/demo
アカウントパスワード: guest / guest
4 つの主流の最新ブラウザと Internet Explorer 11 以降をサポートし、Electron などの Web 標準ベースの環境で直接実行できます。
エッジ/IE | Firefox | クロム | サファリ | オペラ | 電子 |
---|---|---|---|---|---|
エッジ 16/IE 11+ | 522 | 57 | 11 | 44 | クロム57 |
zeta-api
: XML 構成を通じて API インターフェイスとドキュメントを迅速に作成します。安全かつ効率的で、迅速な開発に不可欠です。
Jpom
: シンプル・軽量・低煩雑なオンライン構築・自動導入・日常運用保守・プロジェクト監視ソフトウェア
QQコミュニケーショングループ:836044286
WeChat コミュニケーション グループ: WeChat グループ QR コードは 7 日間のみ有効なので、Erupt 公式公開アカウント (EruptGuide) をフォローして最新のグループ QR コードを取得してください
このフレームワークのサーバー、ドメイン名、スペース、人件費、その他のコストは作者自身によって支払われ、維持されています。オープンソースは簡単ではありませんが、一杯のコーヒーも愛情の問題です。
寄付しに行く
Github リポジトリ | コード クラウド リポジトリ | オンラインエクスペリエンス|
著者: YuePeng / [email protected]