从数据库拿数据遇到的问题
组合对象的查询
- 写跨表查询的sql
- 定义对应的BO 对象
resultType
为BO 类型
组合对象一对多查询
select u.username,group_concat(r.name),min(r.priority) from user u left join user_role ur on u.id = ur.user_id left outer join role r on r.id = ur.role_id group by username
数据之间的拷贝
Orika https://blog.csdn.net/weixin_38331049/article/details/118682486
BeanUtils.copyProperties()
时间的处理
-
如果需要序列化的 JsonForamt 来回都要jackjson 才能生效
@NoArgsConstructor @AllArgsConstructor @Data public class Person { private Long id; @Length(min = 2, max = 20, message = "姓名在2-10个字母之间") private String name; @Range(min = 0,max = 100,message = "年龄不在有效范围内") private Integer age; @NotNull @JsonFormat( pattern = DatePattern.NORM_DATETIME_PATTERN,timezone="GMT+8") private LocalDateTime birthday; }
@PostMapping("/add/person") public Collection<Person> addPerson(@Validated @RequestBody Person person){ persons.put(person.getId(),person); return persons.values(); // return JSON.toJSONString(persons.values()); // final ObjectMapper objectMapper = new ObjectMapper(); // return objectMapper.writeValueAsString(persons.values()); }
-
本地日期序列化
final LocalDateTime now = LocalDateTime.now(); final String format = now.format(DatePattern.CHINESE_DATE_TIME_FORMATTER); System.out.println(format);
字段的效验
在方法加 Validated
https://mp.csdn.net/mp_blog/creation/success/123602054
枚举类型的处理
- 将Integer 通过枚举解析