2012-06-30 103 views
-1

我有一個用HTML創建的下拉菜單,帶有兩個日期和一個提交按鈕。JSP - 從下拉菜單選擇中創建日期對象

這裏是表單動作鏈接到JSP頁面的代碼

<table> 
    <tr> 
    <td> Date: </td> 
    <td> <select name="date"> 
     <option> July 02,2012 </option> 
     <option> July 06,2012 </option> 
     </select> 
    </td> 
</tr> 
</table> 
<input type="submit" value="Submit"> 

。在哪裏我需要根據這個下拉菜單中的選擇來創建一個日期對象。

我做了什麼至今

<tr> 
    <td> Date: </td> 
    <td> <%= request.getParameter("date")%> </td> 
</tr> 

我知道我必須做這樣的事情

Date date = new date(); 

但我不完全明白的地方把這個還是我該如何開始?

回答

0

request.getParameter("date")返回一個字符串,所以你將不得不將它解析成一個Date對象。你可以使用Java的SimpleDateFormat類要做到這一點,如下所示:

String dateStr = request.getParameter("date"); 
SimpleDateFormat dateFormatter = new SimpleDateFormat("MMMM dd, yyyy"); 
Date dateObj = dateFormatter.parse(dateStr); 

您嘗試在此之前,雖然,你會希望確保在您的下拉列表中的日期都在格式上保持一致。換句話說,使所有<option>元素的間隔和尾隨零一致。

+0

請!創建一個進行此轉換並使用use-bean綁定它的bean。除非您絕對必須,否則上面的代碼以及日期字符串長度,格式等的驗證不應在scriptlet中完成。另外,您將使用這些值來確定正確的東西嗎?因此,請確保您的選項的值不僅僅是顯示的文本。 – user1288802

+0

我的歉意 - 我認爲這將是一個良好的開端,因爲OP顯然不是很熟悉Java/JSP ...... –

+0

String date = request.getParameter(「date」); SimpleDateFormat dateFormatter = new SimpleDateFormat(「MMMM dd,yyyy」); 日期dateObj = dateFormatter.parse(date); 用戶用戶=新用戶(網絡研討會,日期); UserIO.add(user,path); ​​<%= user.getData()%>我修改了我的代碼。我有一個正常的get和set方法。 –