工作中的问题


规范

异常打印

Try catch内必须打印堆栈信息,不能使用。因为只会这样会成String,打印的就是异常名了。

1
logger.error(" message send failed, user_id = {} .", e);

建议使用

1
2
3
logger.error(" message send failed.", e);

logger.error(" message send failed, user_id = {} .", sharePost.getId(), e); // 有需要打印时自定义变量名

对接

FastJson中@JSONField注解使用

前后端对接中常用

  • 定义需要返回的bean,bean中定义需要返回的数据,且支持通过getter方法定义返回的JSON的key

  • 获取到需要处理的JSON字符串,且支持通过setter方法定义接收的key并转换成JSON

参考CSDN博主 - weixin_33698823

反射

使用Field的set()方法设置属性值,但是设置属性值报错:无法转换类型导致的 java.lang.IllegalArgumentException

原因:

1
2
3
4
5
6
7
8
Field x = BaseAlgorithmConstantsQuery.class.getDeclaredField("x");
field.setAccessible(true);
field.set(this, value); // 当前this指当前所在类对象,类型不一样,所以赋值报错
field.setAccessible(false);

// 修改
field.setAccessible(true);
field.set(当前类对象, value);

状态码问题

400

简单传递:1.注意参数匹配,如果缺少参数也会访问不了
Ajax传递:
1.注意加@ResponseBody注解(有时候代码正确,但是无法访问,因为 前端是json格式,但是后端解析不了)
2.文件上传的话需要添加:MultipartFile参数接收上传文件内容

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
41
42
43
44
45
46
47
48
49
50
51
52
53
①:
//点击图片
$("#uploadImage").click(function () {
//触发input[file类型]
$("#fileImage").click();
//点击提交按钮上传图片
$("#btnUpload").click(function () {
//获取input[file类型]的值
let fileImage = $("#fileImage");
let formData = new FormData();
formData.append("file", fileImage.get(0).files[0]);
$.ajax({
//请求地址
url: '[[@{/user/upload}]]',
type: 'post',
dataType: 'json',
data: formData,
//ajax上传图片需要添加.
contentType: false,
processData: false,
success: function(data) {
alert("上传成功");
}
})
})
})
②:
$("#fileImage").click(function () {
$("#uploadImage").click();
});
//选中文件后立即上传
$("#fileUpload").on('change', function () {
let formData = new FormData();
let uploadImage = $("#uploadImage");
formData.append("file", uploadImage.get(0).files[0]);
$.ajax({
url: '[[@{user/upload}]]',
data: formData,
dataType: 'json',
type: 'post',
contentType: false,
processData: false,
success: function (data) {
layer.open({
title: "上传成功",
content: data.msg,
yes: function () {
parent.location.reload();
}
})
}
})
})
打赏
  • 版权声明: 本网站所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!
  1. © 2020-2021 Lauy    湘ICP备20003709号-1

请我喝杯咖啡吧~

支付宝
微信