纯Java撸个管理系统,这框架用起来贼香

本文介绍了如何使用Erupt框架,一个低代码的Java框架,实现纯后端开发的管理系统。通过简单的注解配置,可以快速实现单表CRUD、定时任务、代码生成器、系统监控和NoSQL支持等功能,无需编写前端代码。文章详细讲解了Erupt的核心注解,如@Erupt、@EruptField等,并展示了如何配置SpringBoot整合Erupt,以及如何利用Erupt的扩展模块提高开发效率。
摘要由CSDN通过智能技术生成
  • 在项目的resources目录下创建如下配置文件(拷贝mall-tiny-erupt中的即可);

图片

  • 添加Erupt的Java配置类EruptConfig,以启动类MallTinyApplication的包为准,配置包扫码路径;

/**
 * Created by macro on 2021/4/13.
 */
@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 {
}
  • 在MySQL中创建erupt数据库,之后使用启动类运行该项目,在erupt数据库中会自动创建如下表;

图片

  • 项目启动成功后,可以直接访登录页,默认账号密码erupt erupt,项目访问地址:http://localhost:8080/

图片

  • 登录成功后会跳转到项目主页,我们可以发现没有写一行前端代码,却拥有了完整的权限管理和字段管理功能,是不是很棒!

图片

实现单表 CRUD

使用核心注解@Erupt@EruptField定义一个实体类即可快速完成CRUD操作,让我们以商品品牌管理为例试试吧。

  • 不需要Controller、Service、Dao,仅仅一个实体类即可完成CRUD,首先我们创建实体类PmsBrand

@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;

    @EruptField(
            views = @View(title = "品牌首字母"),
            edit = @Edit(title = "品牌首字母",notNull=true)
    )
    private String firstLetter;

    @EruptField(
            views = @View(title = "品牌LOGO"),
            edit = @Edit(title = "品牌LOGO", type = EditType.ATTACHMENT,
                    attachmentType = @AttachmentType(type = AttachmentType.Type.IMAGE))
    )
    private String logo;

    @EruptField(
            views = @View(title = "品牌专区大图"),
            edit = @Edit(title = "品牌专区大图", type = EditType.ATTACHMENT,
                    attachmentType = @AttachmentType(type = AttachmentType.Type.IMAGE))
    )
    private String bigPic;

    @EruptField(
            views = @View(title = "品牌故事"),
            edit = @Edit(title = "品牌故事")
    )
    private String brandStory;

    @EruptField(
            views = @View(title = "排序"),
            edit = @Edit(title = "排序")
    )
    private Integer sort;

    @EruptField(
            views = @View(title = "是否显示"),
            edit = @Edit(title = "是否显示")
    )
    private Boolean showStatus;

    @EruptField(
            views = @View(title = "品牌制造商"),
            edit = @Edit(title = "品牌制造商")
    )
    private Boolean factoryStatus;

    private Integer productCount;

    private Integer productCommentCount;

}
  • 创建成功后重启项目,在菜单维护中添加一个叫商品的一级菜单;

图片

  • 然后再添加一个叫品牌管理的二级菜单,注意选择好菜单类型上级菜单,输入类型值为实体类的类名称PmsBrand

图片

  • 菜单添加成功后,刷新页面,完整的品牌管理功能就出现了,来试下新增;

图片

  • 再看下查询列表页面,可以发现我们通过@Edit注解,将实体类的字段转换成了不同的输入控件,比如文本框、图片上传框、单选框和数值框。

图片

核心注解说明

几个Erupt的核心注解,对照PmsBrand中的代码学习即可!

@Erupt
  • name:功能名称

  • desc:功能描述

@EruptField
  • views:表格展示配置

  • edit:编辑项配置

  • sort:前端展示顺序,数字越小越靠前

@View
  • title:表格列名称

  • desc:表格列描述

  • type:数据展示形式,默认为AUTO,可以根据属性类型自行推断

  • show:是否显示

@Edit
  • title:表格列名称

  • desc:表格列描述

  • type:编辑类型,默认为AUTO,可以根据属性类型自行推断

  • show:是否显示

  • notNull:是否为必填项

  • search:是否支持搜索,search = @Search(vague = true)会启用高级查询策略

扩展模块

当然Erupt的功能远不止于此,还集成了很多实用的系统功能,包括定时任务、代码生成器、系统监控及NoSQL支持等。

定时任务erupt-job

通过定时任务功能,我们可以在代码中定义好定时任务,然后在图形化界面中操作任务,有点之前讲过的PowerJob 的感觉!

  • 首先我们需要在pom.xml中添加erupt-job相关依赖;

<!--定时任务erupt-job-->
<dependency>
    <groupId>xyz.erupt</groupId>
    <artifactId>erupt-job</artifactId>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尘世中-迷途小书童

欢迎IT从业者的头脑风暴

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值