Skip to content

项目开发

README

在选定并下载了 ContiNew Admin 脚手架项目之后,如何基于它继续开发自己的项目呢?下方将以开发 [岗位管理] 为例,展示基于 ContiNew Admin 开发一个基础 CRUD 功能需求的流程。

版本确认

在开始项目开发工作之前,请在后端 pom.xml 及前端 package.json 中查看项目版本,确认好你所下载的 ContiNew Admin 项目版本是稳定版而非开发版。

如果你下载的 ContiNew Admin 项目版本后面带有 -SNAPSHOT 标识,则表明你下载的是开发版,开发版存在不稳定的功能特性,也未经过维护团队集中测试,不建议作为生产项目开发模板。

请选择 下载最新的稳定版源码最新的稳定版分支(最新版本对应的 x.x.x 分支) 来进行生产项目开发。

后端最新稳定版前端最新稳定版
Giteehttps://gitee.com/continew/continew-admin/releaseshttps://gitee.com/continew/continew-admin-ui/releases
GitHubhttps://github.com/continew-org/continew-admin/releaseshttps://github.com/continew-org/continew-admin-ui/releases

准备工作

在使用脚手架类项目时,必然要花点时间在个性化配置上,即使项目契合度很高,那项目的名称、Logo 等品牌元素也必然是要进行配置的。

下面将针对项目名称、Logo 等品牌元素的信息修改,简单进行一下介绍。

后端

修改项目模块、包名

项目模块信息和项目包名的修改较为简单,通过 IDE 进行重命名操作即可,此处不进行详细赘述,只需要注意同步更新 continew-admin-webapi/pom.xml<properties><main-class> 打包配置。

修改 Banner

打开 continew-admin-webapi/src/main/resources/banner.txt,修改其中的 Banner 信息,可 点击链接 进行个性生成。

   ____               _    _  _   _                          _        _             _
  / ___| ___   _ __  | |_ (_)| \ | |  ___ __      __        / \    __| | _ __ ___  (_) _ __
 | |    / _ \ | '_ \ | __|| ||  \| | / _ \\ \ /\ / /_____  / _ \  / _` || '_ ` _ \ | || '_ \
 | |___| (_) || | | || |_ | || |\  ||  __/ \ V  V /|_____|/ ___ \| (_| || | | | | || || | | |
  \____|\___/ |_| |_| \__||_||_| \_| \___|  \_/\_/       /_/   \_\\__,_||_| |_| |_||_||_| |_|

修改 application.yml

打开 continew-admin-webapi/src/main/resources/config/application.yml,修改其中的 [项目配置]。其他环境配置文件(e.g. application-prod.yml)中的项目配置信息也需进行修改。

README

如果项目未开源,则可直接删除 [许可协议信息配置]。

另外,为了便于新用户修改项目品牌元素,项目各处所使用的品牌信息已经尽可能的进行了集中整理,简单来说,你修改了下方的 [项目配置] 则已经修改了 90% 的品牌元素。

  1. 在项目代码中,通过注入 top.continew.starter.core.autoconfigure.project.ProjectProperties 来获取项目配置信息。
  2. 在其他 Spring Boot 配置部分,通过 ${} 来复用项目配置信息。e.g. 尝试在 IDE 中全局搜索一下 ${project.base-package}
yaml
--- ### 项目配置
project:
  # 名称
  name: ContiNew Admin
  # 应用名称
  app-name: continew-admin
  # 版本
  version: 3.1.0-SNAPSHOT
  # 描述
  description: 持续迭代优化的前后端分离中后台管理系统框架,开箱即用,持续提供舒适的开发体验。
  # 基本包(一般为 Spring Boot 启动程序入口所在包)
  base-package: top.continew.admin
  ## 作者信息配置
  contact:
    name: Charles7c
    email: charles7c@126.com
    url: https://blog.charles7c.top/about/me
  ## 许可协议信息配置
  license:
    name: Apache-2.0
    url: https://github.com/continew-org/continew-admin/blob/dev/LICENSE

前端

修改 package.json

打开 continew-admin-ui/package.json,修改其中的【项目配置】。

修改 settings.json

打开 continew-admin-ui/src/config/settings.json,修改其中的【页面布局及高级配置】。

修改品牌元素

在启动前、后端项目之后(你没看错),打开 【系统管理】 -> 【系统配置】 页面,修改品牌元素:名称、Logo、版权声明等信息。

温馨提示

这些信息均存储于 sys_option(参数表)中,也可根据需要自行前往数据表修改。注意非页面操作修改配置,则需要自行清理相关 Redis 缓存。

新建模块

准备工作完成之后,接下来开始 [岗位管理] 功能需求开发。此处,将 [岗位管理] 功能划分到 [test] 模块,以方便演示新模块的创建及使用。

右键单击项目名称,依次选择【新建】 -> 【新模块】,在弹出的【新建模块】窗口,依次输入项目信息。

1

2

新增完模块之后,首先需要在 continew-admin/pom.xml 中进行版本锁定。

3

然后在 continew-admin-webapi/pom.xml 中引入新增的模块( continew-admin-webapi 是打包模块)。

4

在正式使用 continew-admin-test 模块前,还需要在 continew-admin-test/pom.xml 中引入公共模块。

xml
<dependencies>
    <!-- 公共模块(存放公共工具类,公共配置等) -->
    <dependency>
        <groupId>top.continew</groupId>
        <artifactId>continew-admin-common</artifactId>
    </dependency>
</dependencies>

5

新建数据表

根据需求设计岗位管理数据表,并在对应数据库创建好该表。

sql
CREATE TABLE IF NOT EXISTS `sys_post` (
    `id`          bigint(20)   AUTO_INCREMENT              COMMENT 'ID',
    `name`        varchar(30)  NOT NULL                    COMMENT '岗位名称',
    `description` varchar(200) DEFAULT NULL                COMMENT '描述',
    `sort`        int          NOT NULL DEFAULT 999        COMMENT '岗位排序',
    `status`      tinyint(1)   UNSIGNED NOT NULL DEFAULT 1 COMMENT '状态(1:启用;2:禁用)',
    `is_system`   bit(1)       NOT NULL DEFAULT b'0'       COMMENT '是否为系统内置数据',
    `create_user` bigint(20)   NOT NULL                    COMMENT '创建人',
    `create_time` datetime     NOT NULL                    COMMENT '创建时间',
    `update_user` bigint(20)   DEFAULT NULL                COMMENT '修改人',
    `update_time` datetime     DEFAULT NULL                COMMENT '修改时间',
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE INDEX `uk_name`(`name`) USING BTREE,
    INDEX `idx_create_user`(`create_user`) USING BTREE,
    INDEX `idx_update_user`(`update_user`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='岗位表';

生成配置

创建好数据表后,分别启动前、后端项目,打开【系统工具】-> 【代码生成】页面,查看是否有 sys_post 岗位表记录。

6

点击 sys_post 岗位表记录的【配置】按钮,在弹出的配置对话框中,依次配置生成配置、字段配置,全都设置好后,点击【确定】按钮,关闭对话框。

7

8

代码生成

点击 sys_post 岗位表记录的【生成】按钮,在弹出的预览对话框中你可以查看、复制生成的代码,也可以直接点击【下载】,将生成的代码下载到本地。

9

10

生成完的前、后端代码,根据你个人需要分别放到前、后端项目中,然后分别重新启动前、后端项目。

温馨提示

本项目的代码生成并没有那么完美,本人由于精力及个人实际使用需求,对代码生成的要求仅仅是能生成主体框架结构即可。

在我看来,代码生成只是一个提高效率的工具,但开发代码生成工具,尤其是越完善所投入的时间和回报越不成正比。所以,至少目前它生成的 前端代码 需要你参考其他模块进行调整。

如果你的使用场景遇到了一点小问题,可以对代码生成模板进行优化完善,也非常欢迎你提交相应的 PR。

添加路由

最后,我们还需要为【岗位管理】添加菜单路由,这样我们才能访问岗位管理功能。打开【系统管理】 -> 【菜单管理】页面,根据需要添加相应岗位管理的目录、菜单、按钮等信息。

11

12

13

14

刷新下网页,就可以看到新增的菜单项了。

15

这样岗位管理就初步开发好了,剩下的就是根据你的需要进行完善调整了。

温馨提示

真实开发时,一定记得多参考已有模块代码的各组件使用方式、代码规范、风格,等你玩明白了,再做更大的调整,形成独属于你们团队的规范。