В моем приложении Java я использую Mysql, и он возвращает дату в формате как yyyy-MM-dd hh:mm:ss
. Хотя мне это нужно в формате dd-MM-yyyy hh:mm a
. Преобразование происходит в классе Hibernate VO.Как преобразовать дату в формате SimpleDate?
Для этого я делаю так:
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "CREATED_DATE")
private Date createdDate = new Date();
public Date getCreatedDate() {
Date date = null;
try {
date = new SimpleDateFormat("dd/MM/yyyy hh-mm a")
.parse(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(createdDate));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return date;
}
public void setCreatedDate(Date createdDate) {
this.createdDate = createdDate;
}
Но это не дает исключение Синтаксическому.
java.text.ParseException: Unparseable date: "2013-05-06 01:39:00"
at java.text.DateFormat.parse(DateFormat.java:354)
at com.sits.ec.valueObjects.MessageBoxVO.getCreatedDate(MessageBoxVO.java:64)
Может ли кто-нибудь дать мне совет?
если мы непосредственно вернуть объект createDate он собирается же как ..yyyy-MM-dd hh: mm: ss format, но я хочу 'dd/MM/yyyy hh-mm a' этот формат – java
'Date' не имеет форматирования. Вы можете получить представление 'String' только в том формате, который вам нужен. Вы либо получаете 'String' в нужном вам формате, либо получаете объект Date. – SudoRahul
'Date to Date' - абсолютно бессмысленно, так как вы можете форматировать объект' Date'. Вы можете получить представление 'String' этого объекта' Date' в формате, который вам нужен! – SudoRahul