编码需要注意的地方

1.RequestParam、RequsetBody、RequestPart的异同

(1)@RequestParam支持’application/json’(json数据类型),但需要手动解析(不常用),也同样支持multipart/form-data(文件类型)请求,也支持请求行参数,url?name=1

(2)RequsetBody常用来接收前端传来的json数据。

(3)当请求头中指定Content-Type:multipart/form-data时,传递的json参数,@RequestPart注解可以用对象来接收,@RequestParam只能用字符串接收。

2.Rest风格

定义了访问格式,使用URL定位资源,用 HTTP 动词(获取GET,新增POST,删除DELETE,更新PUT)描述操作。

对应GetMapping、PostMapping、DeleteMapping、PutMapper注解。

3.判空

CollectionUtils.isEmpty(List)//判断list是否为空

queryWrapper.in(boolean condition, R column, Collection<?> coll)//构造查询条件

Objects.eq(a,b)//会自动进行判空

equal需要先判空,防止空指针异常

4.若前端需要几个属性,不建议select *,而使用queryWrapper.select("字段1", "字段2","字段3"),加快查询速度。

5.实现接口后要进行测试。

6.什么是 “可重入”,可重入就是说某个线程已经获得某个锁,可以再次获取锁而不会出现死锁。加锁的线程里面也可以存在其他加锁的地方。

7.不建议使用selectOne,防止查询到多条记录报异常,建议Mysql拼接limit 1,Oracle where rownum = 1。

8.Sql语句不建议用or,可以用union代替。

9.编写代码顺序:检验参数是否为空;查询数据;逻辑处理;若有持久化,放到最后。批量增删改,需要使用事务,只有单条,由于是“隐性事务”,执行失败数据库不会有任何改变,所以不需要事务。


版权声明:本文为m0_37166734原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。