快速熟悉新项目

6 阅读3分钟

1.在我们到企业后有项目时要如何快速熟悉项目模块

1.先要- 阅读原型文档+需求文档PRD(Product Requirements Document) 2. 阅读表结构 3.- 页面点击访问感受 4.- 阅读对应模块代码,熟悉代码风格和规范 在接口定义要符合接口风格的知道什么功能比如: GET :查询 POST: 新增 PUT : 修改 DELETE: 删除 同时还要知道所有的接口返回值都是ResponseResult. 3.后端开发流程 1.- 需求分析(基于原型和PRD) 2 开发计划(工期评估) 3 表结构设计(基于原型和PRD) 4 接口设计(基于原型和PRD) 5 功能实现(基于接口设计+原型+PRD) 6 前后端联调 7 测试提bug 8 前后端优化,再联调 9 测试回归bug 10 功能验收 一. #### 接口四要素 一个接口有四个基本要素分别是:请求路径 请求方式 接口入参(请求参数) 接口出参(响应参数)

  • 接口入参(请求参数)

    • 参数

      • 问号查询传参---->后端形参接收
      • path传参---->后端PathVariable注解接收
    • 请求体参数

      • 前端:json对象
      • 后端:对象接收,DTO
      • 接口出参(响应参数)
    • 统一格式 {code:200,msg:"成功",data:{}}

    • 数据封装,一般为VO

      • 敏感数据过滤
      • 整合数据

在功能开发时有依赖版本冲突可以输入此依赖是在根目录下的依赖 org.mybatis mybatis 然后在子类的依赖配置里输入:这个依赖结合你项目用了 MyBatis-Plus(MP),加这个排除的核心目的是 避免版本冲突: org.mybatis mybatis 以及下面这个依赖配置: com.baomidou mybatis-plus-boot-starter 3.5.15

** 注意:maven窗口刷新,才会加载最新依赖配置**

同时还要在application.yml中的MyBatis配置加上 mybatis-plus: 在功能开发时可以使用Mybatis版本方法 也可以使用MybatisPlus版本的方法实现功能

先自己本地利用apifox进行自测,自测没问题后再做前后端联调测试 (也可以用Swagger) Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化restful风格的web服务 它的主要作用是:

  • 使得前后端分离开发更加方便,有利于团队协作
  • 接口的文档在线自动生成,降低后端开发人员编写接口文档的负担
  • 功能测试

Spring已经将Swagger纳入自身的标准,建立了Spring-swagger项目,现在叫Springfox。通过在项目中引入Springfox,即可非常简单快捷的使用Swagger。

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名knife4j是希望它能像一把匕首一样小巧,轻量,并且功能强悍!

目前,一般都使用knife4j框架。

  1. 项目中的全局异常是如何处理的?

  1. 全局异常处理逻辑

一般项目开发有两种异常:

  • 预期异常(程序员手动抛出)
  • 运行时异常
    • BaseException 基础异常,如果业务中需要手动抛出异常,则需要抛出该异常
  • 其中BaseException中的参数为一个枚举,可以在BasicEnum自定义业务中涉及到的异常
  • GlobalExceptionHandler 全局异常处理器
  1. 程序员手动抛出业务异常

当功能新增失败的时候,可以直接抛出BaseException

  1. 不可知异常处理

,在文件上传的接口中,如果上传文件失败,则可以抛出RuntimeException异常,由于RuntimeException异常不是自定义异常,一旦触发就是走全局异常处理器的未知异常

结论:

  • 一旦文件上传失败,则会走全局异常处理器的未知异常
  • 如果系统抛出了其他异常,非BaseException,都会走未知异常