Primefacesのカレンダーコンポーネントを使用しています。VOに対応する文字列があります。データベースに保存しているときに、文字列をjava.sql.dateに変換する必要があります。
xhtml:
<p:calendar value="#{articlePromo.startDate}"
id="vendorStartDateInputTxt" pattern="dd/MM/yyyy" mode="popup" showOn="button">
<f:convertDateTime type="date" dateStyle="short" pattern="dd/MM/yyyy" />
</p:calendar>
startDate(文字列)の値は次のとおりです。SatApr 21 05:30:00 IST 2012
SQL日付を取得するJavaメソッド
public static Date getSQLDate(String strDate) {
java.sql.Date sqlDate = null;
try {
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
java.util.Date dt = formatter.parse(strDate);
sqlDate = new java.sql.Date(dt.getTime());
} catch (Exception e) {
e.printStackTrace();
}
return sqlDate;
}
カレンダーのjava.util.dateを変換するときに、パターンdd / MM/yyyyを使用しました。ただし、変換された日付は次のとおりです。Sat Apr 21 05:30:00IST2012。
- 上記のf:convertDateTimeタグに問題がありますか。
- そうでない場合、この文字列をSQL日付に変換するにはどうすればよいですか。どのフォーマットを与えるべきか理解できません。
ありがとう、シカ