2015-07-31 5 views
0

Мне нужно передать строку json в один из остальных веб-сервисов. Существует свойство «amortizationdate», которое будет иметь формат «yyyy-mm-dd hh mm ss».Преобразование java.util.Date в java.sql.Date с 'yyyy-mm-dd hh mm ss'

, например. {amortizationdate: 2015-07-31 00:00:00}

У нас есть AmortizationVO.java со значением амортизации.

для

например
private java.sql.Date amortizationDate. 

public void setAmortizationDate(java.sql.Date date){ 

} 

Нам необходимо установить дату, вызвав setAmortizationDate(..date) метод и с помощью Джексон конвертировать AmortizationVO.java в Json.

, но в JSON я получаю {amortizationdate: 2015-07-31}. Но ожидаемый результат должен быть с отметкой времени. (Amortizationdate: 2015-07-31 00:00:00)

примечание: я не хочу использовать дату использования в моем объекте Value.

Помощь Pls.

Что я пробовал:

java.util.Date utilDate = new java.util.Date(); 
java.sql.Timestamp sq = new java.sql.Timestamp(utilDate.getTime()); 


ExcelEntityAddressVO entityAddressVO = new ExcelEntityAddressVO();  
entityAddressVO.setAmortizationDate(new java.sql.Date(sq.getTime())); 

Это мой JSON:

{ 
    "amortizationdate" : "2015-07-31", 
} 
+0

sql.Date не имеет информации о времени: http://stackoverflow.com/a/8530574/4136325 –

ответ

1

Вы не хотите java.sql.Date - это не мешает время, используйте java.sql.Timestamp

0

Вы можно попробовать следующее:

import java.sql.Timestamp; 

public class Test { 

     public static void main(String[] args) { 
      java.util.Date utilDate = new java.util.Date(); 
      System.out.println("utilDate:" + utilDate); 
      Timestamp ts = new Timestamp(utilDate.getTime()); 
      System.out.println(ts); 
     } 
}