How to Build a Full‑Stack Admin System with Erupt and Zero Front‑End Code

Discover how the low‑code Java framework Erupt enables rapid creation of full‑stack admin applications without writing front‑end code, by using annotations to generate CRUD pages, integrating with SpringBoot, configuring dependencies, and extending with modules for scheduling, code generation, monitoring, NoSQL, and magic‑API.

macrozheng
macrozheng
macrozheng
How to Build a Full‑Stack Admin System with Erupt and Zero Front‑End Code

Erupt Overview

Erupt is a low‑code full‑stack Java framework that uses annotations to dynamically generate pages, CRUD operations, permission control, and automatic table creation, requiring only a single class file and simple configuration.

Basic Usage

Integrate Erupt with SpringBoot by adding the version property to pom.xml and including dependencies for permission management, data security, web UI, and MySQL driver.

<properties>
    <erupt.version>1.6.13</erupt.version>
</properties>
<dependencies>
    <!--用户权限管理-->
    <dependency>
        <groupId>xyz.erupt</groupId>
        <artifactId>erupt-upms</artifactId>
        <version>${erupt.version}</version>
    </dependency>
    <!--接口数据安全-->
    <dependency>
        <groupId>xyz.erupt</groupId>
        <artifactId>erupt-security</artifactId>
        <version>${erupt.version}</version>
    </dependency>
    <!--后台WEB界面-->
    <dependency>
        <groupId>xyz.erupt</groupId>
        <artifactId>erupt-web</artifactId>
        <version>${erupt.version}</version>
    </dependency>
    <!--Mysql数据库驱动-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.15</version>
    </dependency>
</dependencies>

Configure the datasource and JPA in application.yml:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/erupt?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
    username: root
    password: root
  jpa:
    show-sql: true
    generate-ddl: true
    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
    database: mysql

Add the Erupt Java configuration class and scan packages:

@Configuration
@ComponentScan({"xyz.erupt","com.macro.mall.tiny"})
@EntityScan({"xyz.erupt","com.macro.mall.tiny"})
@EruptScan({"xyz.erupt","com.macro.mall.tiny"})
public class EruptConfig {}

Create the database and run the application; the default login is erupt erupt at http://localhost:8080/.

Single‑Table CRUD

Define an entity class such as PmsBrand with @Erupt and @EruptField annotations; no controller, service, or DAO is required.

@Erupt(name = "商品品牌")
@Table(name = "pms_brand")
@Entity
public class PmsBrand {
    @Id
    @GeneratedValue(generator = "generator")
    @GenericGenerator(name = "generator", strategy = "native")
    @Column(name = "id")
    @EruptField
    private Long id;

    @EruptField(
        views = @View(title = "品牌名称"),
        edit = @Edit(title = "品牌名称", notNull = true, search = @Search(vague = true))
    )
    private String name;

    // other fields with @EruptField ...
}

After restarting, add a top‑level “商品” menu and a “品牌管理” submenu pointing to the PmsBrand class; the full management UI appears automatically.

Core Annotations

@Erupt : name and description of the feature.

@EruptField : view and edit configurations, display order.

@View : column title, description, type, visibility.

@Edit : column title, description, type, required flag, search options.

Extended Modules

Erupt also provides modules such as:

erupt‑job : schedule tasks via UI.

erupt‑generator : code generator for entities.

erupt‑monitor : system and Redis monitoring.

erupt‑mongodb : NoSQL support with MongoDB.

erupt‑magic‑api : develop APIs directly from the UI without writing controllers.

Each module is added as a Maven dependency in pom.xml and configured in application.yml as shown in the snippets above.

Conclusion

For simple business back‑ends, Erupt offers a fast way to build management systems without front‑end code, while more complex UI requirements may still need custom front‑end development.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

JavaLow-codespringbootCRUDErupt
macrozheng
Written by

macrozheng

Dedicated to Java tech sharing and dissecting top open-source projects. Topics include Spring Boot, Spring Cloud, Docker, Kubernetes and more. Author’s GitHub project “mall” has 50K+ stars.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.