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.
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: mysqlAdd 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.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
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.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
