开发时遇到的一个小问题,在这边记录下来,在本机时没有问题出现的,部署到服务器上就抛出了如下异常
排查原因?查找资料说:
在不同的locale环境中,这样获取到的SimpleDateFormat的模式字符串会不一样。
为了避免使用Gson时遇到locale影响Date格式的问题,使用GsonBuilder来创建Gson对象,在创建过程中调用GsonBuilder.setDateFormat(String)指定一个固定的格式即可。
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
JsonObject jsObject = gson.fromJson(body, JsonObject.class);
Rule rule = gson.fromJson(jsObject, Rule.class);
贴出传递之前的js代码:
rule:angular.toJson($scope.rule,true)