也就是一个系统兼容多个时区的客户,时间需要都需要基于客户的时区处理掉。
目前主要涉及的场景挺多的,比如 mysql 的数据查询和查询,查询的话用户给的时间筛选条件都得处理,查询结果中的时间类型的值需要处理,java 代码中的 LocalDate.now()之类的时间创建操作也要处理。表单提交的时间值都需要处理。。。
整理一下,大概有如下场景需要处理
1.各种接口请求参数 这个可以 AOP 拦截 全部处理掉
2.java 代码中的时间创建
3.数据库中的时间创建 比如使用了 insert values (now()) 这种函数 或者时间字段设置了默认值
4.数据库查询返回了时间值
5.调用外部接口返回的值中的时间
....
需求目前只是大致的分析了一点,不知道各位大佬是否经历过这样的需求?给一点点经验吧