十九、电脑商城项目总结
电脑商城项目总结
本项目来源于B站视频,项目对于新手非常友好
- 后端利用
SpringBoot
+MyBatis
+Mysql
来实现 - 前端利用
html+css+javascript
来实现 - 前后端并未实现分离,是传统的前后端一体的web项目
项目资源链接:
1 | 链接:https://pan.baidu.com/s/1M4L1qzjcHCnYvVV00g9VKw |
项目总结
整个项目学习下来,对于个人最大的帮助总结如下
了解了一个项目各个业务开发的具体流程,充分体会了web项目的
MVC
思想一个项目代码开发的流程
- 业务模块整体功能分析
- 设计并创建数据库
- 数据库表对应实体类创建
- 持久层开发
- 规划需要执行的SQL语句
- 接口和抽象方法设计
- SQL映射文件配置(
Mybatis mapper.xml
文件的编写) - 单元测试(每编写一个功能函数,都需要在测试类中进行单元测试,确保功能正常)
- 业务层开发
- 规划异常(设计对应的异常基类)
- 接口和抽象方法(方法名不重要,重要的是方法参数列表的设计,需要前端传递何种参数)
- 抽象方法实现
- 单元测试
- 控制层开发
- 异常处理(创建控制层基类,基类中做异常处理拦截,统一进行异常处理,
@ExceptionHandler
) - 设计请求
- request url
- request method
- request params
- response data
- 处理请求,在控制类中编写对应方法
- 异常处理(创建控制层基类,基类中做异常处理拦截,统一进行异常处理,
- 前端页面
- 作为后端人员,只需要关注如何发送
ajax
请求,如何发送表单请求即可
- 作为后端人员,只需要关注如何发送
一些重要的开发技巧
业务层规划异常,设计异常基类
ServiceException
,其他新增异常均继承自该基类控制层异常处理,设计控制层基类,利用
@ExceptionHandler
注解,拦截控制层所有异常进行处理控制层响应数据设计,新建对应数据的类,以
JSON
形式返回数据,包含响应状态码、响应状态描述符、响应数据,响应数据类型未知,采用注解形式;此格式具体应与前端人员进行协商1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41package com.bang.store.utils;
import lombok.Data;
import java.io.Serializable;
public class JsonResult<E> implements Serializable {
//状态码
private Integer state;
//状态描述信息
private String message;
//请求返回数据,数据类型位置,泛型
private E data;
public JsonResult() {
}
public JsonResult(Integer state) {
this.state = state;
}
//捕获异常,异常信息的传递
public JsonResult(Throwable e){
this.message=e.getMessage();
}
public JsonResult(Integer state,String message){
this.state = state;
this.message = message;
}
public JsonResult(Integer state, E data) {
this.state = state;
this.data = data;
}
public JsonResult(Integer state, String message, E data) {
this.state = state;
this.message = message;
this.data = data;
}
}图像上传模块,学会了文件上传前后端之间如何协作,后端存储、前端回显等功能
拦截器的实现,对于一个项目安全性考虑,设计对应拦截器,只有登录之后才能访问其他页面
- 拦截器如何添加白名单和黑名单
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Bang's Blog!