2014-11-21 35 views
0

你好,我是使用struts2的,但我的文本字段從Java.util.date越來越對象,而不是它的價值Java.util.date - 打印其對象並不看重

的Javascript

start = moment(start).format(); 
alert(start); 
2014-10-31T00:00:00+00:00 

但我當嘗試使用java對象開始的價值,它打印以下對象

java.util.GregorianCalendar[time=1416382200000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Ulaanbaatar",offset=28800000,dstSavings=0,useDaylight=false,transitions=48,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2014,MONTH=10,WEEK_OF_YEAR=47,WEEK_OF_MONTH=4,DAY_OF_MONTH=19,DAY_OF_YEAR=323,DAY_OF_WEEK=4,DAY_OF_WEEK_IN_MONTH=3,AM_PM=1,HOUR=3,HOUR_OF_DAY=15,MINUTE=30,SECOND=0,MILLISECOND=0,ZONE_OFFSET=28800000,DST_OFFSET=0] 

我怎樣才能得到2014-10-31T00:00:00 + 00:00在Java(Struts2的)您是否使用<s:date>標籤收到你的JSP中的日期值對象

Struts2的getter和setter

@Column(name="EVENT_START") 
    public Calendar getOrder_employee_start() { 
     return order_employee_start; 
    } 
    public void setOrder_employee_start(Calendar order_employee_start) { 
     order_employee_start.getTime(); 
     this.order_employee_start = order_employee_start; 
    } 
+1

你可以嘗試使用['Date'(https://開頭struts.apache.org/release/2.0.x/docs/date.html)?你的標題說'java.util.Date',但你的代碼使用'java.util.Calendar'。 – 2014-11-21 05:29:24

+0

是的,我試圖使用日期但日期沒有得到任何時間,它只需要日期 – 2014-11-21 05:32:47

+0

顯示我的代碼。因爲'java.util.Date'確實包含時間。它實際上是從[*「該時代」即1970年1月1日00:00:00 GMT *。*](https://docs.oracle.com/javase/7/docs/api/)開始的微秒數java/util/Date.html)根據我的第一個鏈接,struts 2中的回退格式是[*'DateFormat.MEDIUM' *](https://docs.oracle.com/javase/7/docs/api/ java/text/DateFormat.html#MEDIUM)這只是日期。 – 2014-11-21 05:35:22

回答

0

如果不是,您應該返回一個字符串值,您可以直接在您的文本框中使用。

+0

我現在在javascript YYYY/MM/DD HH:mm中使用以下格式,它打印2014/11/21 08:00:00,但是java沒有獲取java正在打印的時間2014/11/21 00:00:00 – 2014-11-21 05:49:36

+0

嘗試使用沒有任何格式的默認。看看這個鏈接http://www.mkyong.com/struts2/struts-2-date-tag-example/ – 2014-11-21 06:04:05

0

SimpleDateFormat可以用來得到想要的結果。

對於實例 -

Calendar cal = Calendar.getInstance(); 

SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX"); 

然後調用sdFormat.format(cal.getTime())

所以,你的情況,你可以這樣做sdFormat.format(order_employee_start.getTime())