struts2 嵌入MY 97 datepicker 的实现

来源:互联网 发布:sql左联查询 编辑:程序博客网 时间:2024/04/29 00:52

        my97 datepicker 是实现日期型数据输入较漂亮的方式 ,现在大多数网站都使用它, 下载方式可以去官方网站直接下载, 现在的最新版本是4.2版本, 功能强大,

        struts2 的流行也是非常迅速, 但struts2 中的日期选择框比较丑, 而且颜色单一,直接将两者结合起来, 会遇到格式转换方面的较多问题, 查看了一些资料,提到struts2 有强大的类型转换功能, 就写了一个转换器, 来处理字符串与date类型的转换问题. 代码如下:

 

/**   *************************start*********************** */
package com.xxxxx.xxxx;


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

import org.apache.struts2.util.StrutsTypeConverter;

public class DateConverter extends StrutsTypeConverter {

    @Override
    public Object convertFromString(Map content, String[] values, Class toClass) {
        Date date = null;
        String dateString = null;
        if (values != null && values.length > 0) {
            dateString = values[0];
            if (dateString != null) {
                SimpleDateFormat format = new SimpleDateFormat(
                        DATE_TIME_FOMART_IE);
                try {
                    date = format.parse(dateString);
                } catch (ParseException e) {
                    date = null;
                }
              
            }
        }
        return date;
    }

    @Override
    public String convertToString(Map context, Object o) {
        // 格式化为date格式的字符串
        Date date = (Date) o;
        String dateTimeString = new SimpleDateFormat(DATE_TIME_FOMART_IE).format(date);
        return dateTimeString;
    }

    private static String DATE_TIME_FOMART_IE = "yyyy-MM-dd HH:mm:ss";
    private static String DATE_TIME_FOMART_FF = "yy/MM/dd hh:mm:ss";
}

/**  **********************end***************************  */

 

 

并加入一个配置文件:    xwork-conversion.properties 

 

java.util.Date=com.spider.common.struts2.DateConverter

 

 

在页面里面使用:

    <s:textfield name="user.date"
        value="%{user.date}" cssClass="Wdate"
        onfocus="WdatePicker({minDate:'%y-%M-%d',dateFmt:'yyyy-MM-dd HH:mm:ss'})"
        label="%{getText('label.user.date')}" size="20" />


部署测试 ,  一切正常 .

原创粉丝点击