如何在scriptlet中将java.util.date转换为所需的格式

时间:2011-11-19 11:08:00

标签: java jsp date scriptlet

我在搜索后将传输对象返回给JSP。它有一个java.util.Date字段(例如private Date issueDate;

我使用usebean标记访问TO中的数据,并将日期显示为:

<INPUT TYPE="text" readonly="readonly" NAME="issueDt" ID="issueDt" 
       SIZE="45" value="<%=mySearchTO.getIssueDt()%>">

然而,这是以例如对于例如的格式打印日期。 MON JAN 31 00:08:00 IST 2011

我希望将日期简单地打印为MM/DD/YYYY,并且在时间也很重要的情况下,以MM/DD/YYYY HH:MM格式打印。

如何在JSP内部实现这一目标?我不知道是否需要使用Javascript函数或某些静态Java方法。

请原谅scriptlet的用法。这是一个遗留应用程序,所以我不能使用EL。 请通过scriptlet提供解决方案。所以解决方案如:

<fmt:formatDate value="${new Date(c.dateInIntegerValue)}" 
                pattern="dd.MM.yyyy hh:mm"/> 

在其他问题中可用,对我不起作用。

以下代码是否有效?

<fmt:formatDate value="<%=mySearchTO.getIssueDt()%>" 
                pattern="dd.MM.yyyy hh:mm"/> 

如果是,如何在JSP中使用它?我的意思是标签和所有!

同样,我想尽量避免使用jquery和这样的库。

4 个答案:

答案 0 :(得分:5)

<%@ page import="java.text.SimpleDateFormat" %>    
<% SimpleDateFormat dateFormatWithTime = new SimpleDateFormat("MM/dd/yyyy hh:mm");%>
<INPUT TYPE="text" readonly="readonly" NAME="issueDt" ID="issueDt" SIZE="45" value="<%=dateFormatWithTime.format(mySearchTO.getIssueDt())%>">

理想情况下,您应该只使用JSTL中的formatDate或将此代码分解为 自定义taglib。

答案 1 :(得分:0)

您需要使用java.text.SimpleDateFormat课程或Joda time

答案 2 :(得分:0)

使用DateFormat

http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html

Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat();
df.applyPattern("MM/dd/yyyy");
System.out.println(df.format(date));

答案 3 :(得分:0)

使用..

DateFormat f = new SimpleDateFormat(“yyyy-MM-dd”);

相关问题