Skip to content

二次开发入门

作者: luote (luote) · 个人主页 luote996.cn

本文面向 0 基础开发者,说明如何在脚手架基础上快速开发自己的业务功能。

若尚未掌握 HTTP、Java、Vue 等基础,请先阅读 零基础学习路线

先搞清楚三件事

  1. 后端负责数据和权限:接口、数据库、登录校验都在 Spring Boot 里完成。
  2. 前端负责展示和交互:页面、表单、表格通过 Vue3 调用后端接口。
  3. 前后端通过 HTTP 接口通信:前端 axios 发请求,后端返回统一 JSON 格式 Result

推荐开发顺序

不要一上来就写页面。正确顺序是:数据库 → 后端 → Swagger 验证 → 前端

日常开发怎么启动

第一次启动

  1. MySQL 执行 data.sql 建库建表
  2. 启动 Redis
  3. 后端复制 .env.example.env,改数据库密码
  4. 后端运行 mvn spring-boot:run
  5. 前端运行 npm install && npm run dev

日常开发

步骤命令说明
1后端 mvn spring-boot:run改 Java 代码后需重启
2前端 npm run dev改 Vue 代码会自动热更新
3打开 Swaggerhttp://localhost:8080/swagger-ui.html
4打开前端http://localhost:5173

后端分层怎么理解

以「用户管理」为例,每一层只做一件事:

层级目录职责
Controllercontroller/接收请求、参数校验、返回 Result
Serviceservice/业务逻辑
Mappermapper/数据库读写
Domaindomain/po,dto,vo数据对象:po 对应表,dto 接收参数,vo 返回前端
Commoncommon/公共工具、异常、常量

请求链路:

浏览器 → Controller → Service → Mapper → MySQL

            Result 返回 JSON

前端目录怎么理解

目录职责
api/封装后端接口,不写页面逻辑
view/页面,按模块分文件夹,入口固定 index.vue
router/路由,控制哪个 URL 显示哪个页面
store/全局状态,如登录用户信息
layout/公共布局,如顶部导航栏
component/可复用小组件

请求链路:

页面 view → api 方法 → request.ts → 后端接口

                         自动带 Token

统一响应格式

后端所有接口返回:

json
{
  "code": 200,
  "message": "操作成功",
  "data": { }
}

前端 request.ts 已封装:成功时直接返回 data,失败时自动弹错误提示。

获取当前登录用户

后端业务代码中:

java
Long userId = UserContext.getUserId();
LoginUserVO user = UserContext.get();

JWT 过滤器会在每次请求时把用户信息放进 ThreadLocal,Service 层可直接使用。

权限控制

  • 登录即可访问:Controller 不加额外注解
  • 仅管理员:加 @PreAuthorize("hasRole('ADMIN')")
  • 公开接口(如登录):在 application.ymlpermit-urls 中配置

默认 admin 账号角色为 ADMIN,可访问用户管理等管理接口。

下一步

MIT Licensed