java.sql.Timestamp時間序列化
阿新 • • 發佈:2019-01-31
使用httpRequestPost在兩個專案之間傳值時候出現了問題
卡住日誌如下
2018-04-03 16:44:07,635 [http-apr-80-exec-3] DEBUG org.mybatis.spring.SqlSessionUtils- Transaction synchronization deregistering SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@504d34ac]
2018-04-03 16:44:07,635 [http-apr-80-exec-3] DEBUG org.mybatis.spring .SqlSessionUtils- Transaction synchronization closing SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@504d34ac]
2018-04-03 16:44:07,666 [http-apr-80-exec-9] DEBUG com.sunyard.interceptors.RestLogInterceptor- ==/mallService/api/EnnBbsMessage/tt
日誌打出來路徑就停止了訪問另一個專案
跳轉方法
傳送
public void update(EnnBbsMessage ennBbsMessage){
String url = "/api/EnnBbsMessage/update" ;
httpRequestPost(url, ennBbsMessage,
new TypeReference<ResponseMsg<String>>() {
});
}
接收
@Controller
@RequestMapping(value = "/api/EnnBbsMessage")
public class BbsMessageRest {
@ResponseBody
@RequestMapping(value = "/update", method = RequestMethod.POST )
public ResponseMsg<Void> update(@RequestBody EnnBbsMessage ennBbsMessage){
ennBbsMessageDao.update(ennBbsMessage);
ResponseMsg<Void> result = new ResponseMsg<Void>();
result.setRetCode("200");
return result;
}
}
兩個實體屬性必須一樣,複製貼上好幾次還是老樣子,以為方法寫錯了,實體改成字串,傳過去了果然實體有問題,檢查半天才找到實體中如有型別為java.sql.Timestamp時間必須轉換格式才能傳過去
在get方法中加上
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
public java.sql.Timestamp getCreDate() {
return this.creDate;
}
第二次遇到,記錄下省得下次又耽誤半天時間