bug日记
一.前端的数据爆了
我也崩溃了,遇到一个bug,前端向后段发送一个请求获得数据库的一个主键,由于主键是一个算法生成的数字比较大,后端long可以接受,但是js中的number由于超过了范围接受不了,导致前端拿着这个主键发请求的时候一直报错。
解决方案:
二.前端和后端日期传输出现的问题
序列化(Java 对象转 JSON):
当将一个包含日期类型(如
Date
、LocalDateTime
等 )属性的 Java 对象转换为 JSON 格式数据返回给前端时,默认的日期格式可能不符合需求。通过@JsonFormat
注解,可以指定日期的输出格式。反序列化(JSON 转 Java 对象):
在接收前端传来的 JSON 数据并将其转换为 Java 对象时,如果 JSON 中日期格式和 Java 对象中日期类型的默认解析格式不一致,就可能导致转换失败。
@JsonFormat
注解也能解决这个问题,让 Jackson 按照指定格式解析日期字符串。在需要转换的类的属性上添加就行,一般是DTO和VO类需要使用 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")