首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SpringBoot3+Vue3前后端分离的Java快速开发框架(Harry技术)配套代码生成器

SpringBoot3+Vue3前后端分离的Java快速开发框架(Harry技术)配套代码生成器

作者头像
Harry技术
发布2025-01-13 16:16:48
发布2025-01-13 16:16:48
22200
代码可运行
举报
运行总次数:0
代码可运行

SpringBoot3+Vue3前后端分离的Java快速开发框架(Harry技术)配套代码生成器

项目简介:基于 JDK 17、Spring Boot 3、Spring Security 6、JWT、Redis、Mybatis-Plus、Knife4j等构建后端,基于Vue 3、Element-Plus 、TypeScript等构建前端的分离单体权限管理系统。

下载项目

项目地址:

后端:https://gitee.com/harry-tech/harry

前端:https://gitee.com/harry-tech/harry-vue.git

运行项目

后端

下载harry,导入idea

  • 创建数据库harry3,数据库编码为UTF-8
  • 执行db/harry3_0106_all.sql文件,初始化数据
  • 修改application.yml,更新MySQL账号和密码
  • IDEA运行HarryApplication.java,则可启动项目 harry3_0106_all.sql 这个文件是最新的全量脚本。

前端

下载harry-vue

代码语言:javascript
代码运行次数:0
运行
复制
# 克隆代码
git clone https://gitee.com/harry-tech/harry-vue.git

# 进入项目目录
cd harry-vue

# 安装 pnpm
npm install pnpm -g

# 设置镜像源(可忽略)
pnpm config set registry https://registry.npmmirror.com

# 安装依赖
pnpm install

# 启动运行
pnpm run dev

设计表结构

创建一个demo表

代码语言:javascript
代码运行次数:0
运行
复制
CREATETABLE`demo` (
`id`bigintNOTNULL AUTO_INCREMENT COMMENT'书籍ID',
`title`varchar(255) NOTNULLCOMMENT'标题',
`author`varchar(255) DEFAULTNULLCOMMENT'作者',
`isbn`varchar(13) DEFAULTNULLCOMMENT'ISBN',
`description`textCOMMENT'简介',
`available`tinyint(1) DEFAULT'1'COMMENT'是否可借',
`create_time` datetime DEFAULTCURRENT_TIMESTAMPCOMMENT'创建时间',
`create_by`varchar(64) DEFAULTNULLCOMMENT'创建人',
`modify_time` datetime DEFAULTCURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMPCOMMENT'修改时间',
`modify_by`varchar(64) DEFAULTNULLCOMMENT'修改人',
`valid`intDEFAULT'1'COMMENT'有效状态,0:无效 1:有效',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5DEFAULTCHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='书籍表';

公共字段

id, create_time,create_by,modify_time, modify_by ,valid 建议每张表中都有这几个公共字段

配合后端BaseEntity使用,方便后续对创建人、修改人使用插件自动导入

代码语言:javascript
代码运行次数:0
运行
复制
package cn.harry.common.base;

import cn.hutool.core.date.DatePattern;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.Date;

/**
 * 抽象实体
 *
 * @author harry
 * @公众号 Harry技术
 */
@Getter
@Setter
publicclassBaseEntityimplementsSerializable{

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 创建者
     */
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    @JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN, timezone = "GMT+8")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新者
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String modifyBy;

    /**
     * 修改时间
     */
    @Schema(description = "修改时间")
    @JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN, timezone = "GMT+8")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date modifyTime;
}

生成代码

运行前端,点击代码生成菜单,生成代码

image-20250106141813871

基础配置

包名:建议都放在cn.harry.modular下,方便模块化维护项目

字段配置

这里可以配置页面上列表显示/表单显示/以及查询方式等格式

预览

微信截图_20250106134546

这里可以看到前后端代码生成的情况,如需调整可以返回上一步进行调整,然后下载代码,这里会生成一个压缩包,将压缩包中的代码复制到项目相应位置,根据项目情况配置菜单即可。

image-20250106143826952

重新启动后页面展示

  • 新增
  • 修改

开发过程中不能完全依赖代码生成器,这里页面上需要稍微手动调整一下,如:新增的时候会存在ID,创建时间等字段,这里需要手动删除代码 后端生成的mapper xml 路径 demo.mapper,可以调整为 mapper.demo ,后续会继续完善代码生成器,争取减少开发过程中的手动修改

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Harry技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SpringBoot3+Vue3前后端分离的Java快速开发框架(Harry技术)配套代码生成器
    • 下载项目
    • 运行项目
    • 设计表结构
      • 公共字段
    • 生成代码
      • 基础配置
      • 字段配置
      • 预览
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档