<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    kelefa  
    大千世界中,唯一缺乏的就是人類的注意力。
    日歷
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567
    統計
    • 隨筆 - 11
    • 文章 - 0
    • 評論 - 28
    • 引用 - 0

    導航

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

     
    用webwork的datepicker時, 如果格式是"%Y-%m-%d"工作很正常, 但是有些格式需要帶上時間的:
    "%Y-%m-%d?%H:%M", 這時用webwork默認的類型轉換就不行了,需要自己實現, 根據javaeye論壇某高手的建議用正則表達式來判斷form傳過來的日期字符串是"%Y-%m-%d"還是"%Y-%m-%d?%H:%M",再用相應的SimpleDateFormat來parse分析字符串生成Date對象, 代碼如下:

    import?java.text.ParseException;
    import?java.text.SimpleDateFormat;
    import?java.util.Date;
    import?java.util.Map;

    import?org.apache.log4j.Logger;

    import?com.opensymphony.webwork.util.WebWorkTypeConverter;

    public?class?DateConverter
    ????????
    extends?WebWorkTypeConverter
    {
    ????
    private?static?final?Logger?log?=?Logger.getLogger(?DateConverter.class?);

    ????
    private?final?static?String?regex_time?=?"[0-9]{2,4}-[0-9]{1,2}-[0-9]{1,2}?[0-9]{1,2}:[0-9]{1,2}";

    ????
    private?final?static?SimpleDateFormat?sdf_time?=?new?SimpleDateFormat(
    ????????????
    "yyyy-MM-dd?HH:mm"?);

    ????
    private?final?static?String?regex_date?=?"[0-9]{2,4}-[0-9]{1,2}-[0-9]{1,2}";

    ????
    private?final?static?SimpleDateFormat?sdf_date?=?new?SimpleDateFormat(
    ????????????
    "yyyy-MM-dd"?);

    ????@Override?
    public?Object?convertFromString(?Map?context,?String[]?values,
    ????????????Class?toClass?)
    ????
    {
    ????????
    if?(?values.length?==?1?)
    ????????
    {
    ????????????Date?date?
    =?null;
    ????????????
    try
    ????????????
    {
    ????????????????date?
    =?convertToDate(?values[0]?);
    ????????????}

    ????????????
    catch?(?ParseException?e?)
    ????????????
    {
    ????????????????log.warn(?e.getMessage()?);
    ????????????}

    ????????????
    return?date;
    ????????}


    ????????Date[]?results?
    =?new?Date[values.length];

    ????????
    for?(?int?i?=?0;?i?<?values.length;?i++?)
    ????????
    {
    ????????????String?value?
    =?values[i];
    ????????????
    try
    ????????????
    {
    ????????????????results[i]?
    =?convertToDate(?value?);
    ????????????}

    ????????????
    catch?(?ParseException?e?)
    ????????????
    {
    ????????????????log.warn(?e.getMessage()?);
    ????????????}

    ????????}


    ????????
    return?results;
    ????}


    ????
    private?Date?convertToDate(?String?value?)
    ????????????
    throws?ParseException
    ????
    {
    ????????
    if?(?value.matches(?regex_time?)?)
    ????????????
    return?sdf_time.parse(?value?);
    ????????
    else?if?(?value.matches(?regex_date?)?)
    ????????????
    return?sdf_date.parse(?value?);

    ????????
    return?null;
    ????}


    ????@Override?
    public?String?convertToString(?Map?context,?Object?o?)
    ????
    {
    ????????
    if?(?o?instanceof?Date?)
    ????????
    {
    ????????????Date?date?
    =?(Date)?o;
    ????????????
    return?sdf_time.format(?date?);
    ????????}


    ????????
    return?o.toString();
    ????}


    ????
    public?static?void?main(?String[]?args?)
    ????
    {
    ????????System.out.println(?
    "2006-07-11".matches(?regex_date?)?);
    ????????System.out.println(?
    "2006-07-11?00:21".matches(?regex_time?)?);
    ????}

    }

    要讓這個類來代替webwork默認的轉換你還需要在classpath目錄, 一般就是classes目錄放置配置文件
    xwork-conversion.properties:
    java.util.Date=DateConverter

    這種方法是對整個application起作用,.
    如果要只對單個action起作用, 在action同一個package寫一個ActionClassName-conversion.properties:
    startDate=DateConverter
    posted on 2006-07-13 15:07 楊杰榮 閱讀(904) 評論(0)  編輯  收藏 所屬分類: webwork,hibernate
     
    Copyright © 楊杰榮 Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 国产无遮挡裸体免费视频 | 国产精品亚洲不卡一区二区三区| 菠萝菠萝蜜在线免费视频| 亚洲中文字幕在线观看| 91人成网站色www免费下载| 亚洲熟女乱色一区二区三区| 国产亚洲精品国看不卡| 亚洲性线免费观看视频成熟| 特级毛片爽www免费版| 亚洲视屏在线观看| 男人的天堂亚洲一区二区三区| 免费国产99久久久香蕉| 亚洲精品美女久久久久久久| 欧洲亚洲国产清在高| 全免费一级午夜毛片| 日韩精品无码免费专区午夜不卡| 亚洲成人激情小说| 亚洲成a人片在线观看日本| 午夜视频免费成人| 久草免费手机视频| 深夜a级毛片免费视频| 亚洲欧洲日韩在线电影| 国产日韩成人亚洲丁香婷婷| 男人的好免费观看在线视频| 日韩av无码免费播放| 午夜亚洲乱码伦小说区69堂| 亚洲性一级理论片在线观看| 久久精品国产亚洲精品| 日本午夜免费福利视频| 最近中文字幕国语免费完整| selaoban在线视频免费精品| 亚洲综合一区二区三区四区五区 | 亚洲国产精品va在线播放| 国产一区二区三区免费在线观看| 最近免费中文字幕高清大全| a级男女仿爱免费视频| 男男gay做爽爽免费视频| 亚洲综合久久精品无码色欲| 久久久亚洲欧洲日产国码aⅴ| 国产亚洲一区区二区在线| 日韩激情无码免费毛片|