javaweb 案例——增删改查

1 环境搭建

在这里插入图片描述

在这里插入图片描述

1.1 REST 开发规范

在这里插入图片描述

注意事项

在这里插入图片描述

统一响应结果Result

1.2 开发流程

在这里插入图片描述

2 开发阶段一

在这里插入图片描述

日志记录:
在这里插入图片描述

2.1查看所有部门

2.2删除部门

在这里插入图片描述
1.删除后返回时需要调用success无参构造
2.注意URL中参数的传递,由{id}传给 Integer id,加上注解@PathVariable(路径变量)
在这里插入图片描述

2.3新增部门

在这里插入图片描述

通过JSON传递过来的请求如何在服务端接受?:

答:通过加注解@Requestbody 封装到实体类中

2.4修改部门

在这里插入图片描述

3 开发阶段二

3.1 分页查询(员工)

页码计算公式:起始索引 = (页码数-1)*每页数据

select * from emp limit 0,5;    //查询第一页,每页展示五条记录

在这里插入图片描述

思路:

@RequestParam(defaultValue = "1")   //可以设置默认值默认值

3.2 分页查询插件PageHelper

mapper正常查询 ,在service层中调用pageHelper来分页,然后把得到的集合强转为Page类型

Page类型已经设置了页数和每页的数量

在这里插入图片描述

在这里插入图片描述

3.3 分页条件查询(员工)

注意:条件传递形式:直接传递
需要用到@DateFormat对时间数据进行注解
返回参数:PageBean————>由总数量total和返回的数据集合封装而成
在这里插入图片描述

在这里插入图片描述

3.4 新增员工(需要上传图片)

包含两部分:
1:根据id查询员工信息
2:修改员工信息
在这里插入图片描述

3.5文件上传

三要素

前端传过来的是一个表单:

<form action="/upload" method="post" enctype="multipart/form-data">
    姓名: <input type="text" name="username"><br>
    年龄: <input type="text" name="age"><br>
    头像: <input type="file" name="image"><br>
    <input type="submit" value="提交">
</form>

在这里插入图片描述
在这里插入图片描述

3.5.1 文件存储

存储到本地

1 先获取原始文件名: String filename = image.getOriginalFilename();
2 文件存储在本地(通过拼接):image.transferTo(new File("D:\\sucai\\"+filename));
在这里插入图片描述

在这里插入图片描述
构造唯一的文件名(不可重复)
答:通过随机生成uuid
先获取原始文件名,通过字符串截取到文件后缀,再通过uuid.文件后缀 拼接

限制文件大小
答:在properties加入以下内容

## 单个文件大小
spring.servlet.multipart.max-file-size=10MB

## 单次请求大小
spring.servlet.multipart.max-request-size=100MB
3.5.1 阿里云OSS

通过代码来控制OSS上的文件存储
OSS官方文档

思路:
1.先在服务端接受
2.再将图片存储再阿里云OSS中(每个文件都有一个url)
3.再将图片的url返回,将其保存在实体类的image中

注意:第二步骤第三步用工具类:AliOSSUtils 前面加上@Component注解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:
在这里插入图片描述

4 配置文件(参数配置化)

在这里插入图片描述
在这里插入图片描述
注意:
@AutoWired :从容器中注入
@Value :从 配置文件中注入,参数是(“${配置项}”)

4.1 yml 配置文件

在这里插入图片描述

在这里插入图片描述
配置对比

在这里插入图片描述

4.2 配置自动注入

在这里插入图片描述

5 优化

公共URL 抽取到类上
在这里插入图片描述
在这里插入图片描述

难点总结

1.前端传来的参数为JSON格式时:服务端需要将其封装到一个实体类中,用@Requestbody

2.若需要从后端返回多个实体数据,则返回一个封装了对象的集合

3.若传来的id是在URL/数字,则depts/{id}

  • 26
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值