0
我有一個帶有date_observed字段的Javabean。現在我試圖創建一個表單,用戶可以在開始日期和結束日期之間搜索條目。帶有單個日期字段的Javabean但是需要使用日期範圍搜索它
我應該創建另一個Javabean來擴展這個bean以具有開始和結束日期字段,以便我可以從請求參數填充這些字段嗎?
我想幹淨地將一個bean傳遞給我的Dao進行SQL字符串生成,如果他們輸入的日期格式不正確,也有辦法進行表單驗證。
通常我會做
public void processDate_observed(HttpServletRequest request, Comment comment) {
String _date = FormUtil.getFieldValue(request, FIELD_DATE_OBSERVED);
if (!"".equals(_date) && _date != null) {
try {
Date date = DateUtil.parse(_date);
com.setDate_observed(date);
} catch (ParseException e) {
setError(FIELD_DATE_OBSERVED, e.getMessage());
}
}
}
但我的意見的Javabean沒有字段start_date
和end_date
併爲dao.search(comment)
public List<Evaluatee> search(Comment comment) {
SQL = ".... where date_observed > ? AND date_observed <= ?
ps.setDate(1, comment.EXTENDED FIELD???)
ps.setDate(2, comment.EXTENDED FIELD???)
...
}
什麼是這裏最好的做法是什麼?創建一個全新的Javabean,擴展我的原始bean或將兩個日期字段傳遞給Dao?但是,如果我沒有bean中的日期,那麼如何將表單驗證通過形式傳遞給表單?