0

在我的应用程序中,我必须在我的输入文本框(一个 JSP 文件)中设置默认值,这是一个日期。我从 oracle 数据库中获取它,它将它作为字符串获取。所以我必须将它转换为日期。问题正在转换中。它选择日期为'30-APR-2013'。我必须将其转换为日期,然后将其重新转换为我想要的日期格式'dd/mm/yyyy'。在我的网络服务中,我将其编写如下:

@WebMethod(operationName = "CurrentEOD")
    public String CurrentEOD() {

        String result = null;
        try{
        String sql="select to_char(to_date(MAX(DAT_EOD),'dd-MON-yyyy'),'dd/mm/yyyy')";

        TransactionManager tm=TransactionManager.GetInstance();
        try
        {

        tm.Begin();
        result=tm.ExecuteScalar(sql).toString();
        System.out.println(result);

        tm.End();
        System.out.println("Transaction End..... " );
        }
         catch(Exception e)
            {
                    tm.RollBack();
                    System.out.println("Service: " + e);

             }
        }
        catch(Exception ex)
        {

        System.out.println("Exception: " + ex);
        }
        return result;
    }

现在当我像这样在我的 JSP 页面中调用它时:

java.lang.String result = port.currentEOD();
out.println(result);
} catch (Exception ex) {

}
%>
<%-- end web service invocation --%>" size="20px" style="color: #AAAAAA"/>

                                  <img style="cursor: hand" src="calendar/images/calendar.jpg" onclick="displayCalendar(document.forms[0].txtFromDate,'dd/mm/yyyy',this)" alt="Calendar"/>

///我的代码


这里结果=30/04/0013 在我的 oracle 数据库中 DAT_EOD= 30-APR-13

使用 to_char 和 to_date 后,它返回 30/04/0013

我如何将其转换为 30/04/2013

4

1 回答 1

0

请考虑存储在数据库类型 TIMESTAMP 中。它很容易转换为 java Date,您不需要转换。(此外,如果您将来想使用它,Hibernate 也支持它)

于 2013-05-02T13:03:51.023 回答