java.utilDate和java.sql.Date

java程序中的时间类型有java.util.Date和java.sql.Date两种。两者之间的关系和转化如下:

java.sql.Date是java.util.Date的子类,所以可以直接将java.sql.Date类型的对象赋值给java.util.Date对象;然而要通过java.utile.Date对象获取java.sql.Date对象就需要使用以下方法:

java.util.Date date = new java.utile.Date();
java.sql.Date sqlDate = new java.sql.Date(date.getTime());

在java程序中字符串和时间的转换也是很常见的,所以将字符串和时间转换的方法总结如下:

   将时间类型转换为字符串:

/**
     * 获取java.util.Date;
     * 这里需要的第二个参数date既可以使java.util.Date类型,也可以是java.sql.Date类型
     * 因为java.sql.Date是java.util.Date的子类
     */
    public static String getStringDate(String format,Date date){
        SimpleDateFormat sdf;
        if(format!=null&&!"".equals(format.trim())){
            sdf=new SimpleDateFormat(format);
        }
        else{
            sdf=new SimpleDateFormat();
        }
        return sdf.format(date);
                                      
    }

  将字符串转换为时间:,

//把符合时间类型的字符串转换成java.util.Date类型
    public static Date getUtilDate(String dateStr,String format){
        Date d = null;
        SimpleDateFormat formater = new SimpleDateFormat(format);
        try {
            formater.setLenient(false);
            d = formater.parse(dateStr);
        } catch (Exception e) {
            d = null;
        }
        return d;
    }


//把符合时间类型的字符串转换成java.sql.Date类型
    //注意:这里的字符串形式必须符合“yyyy-MM-dd”
    public static java.sql.Date getSqlDate1(String dateStr){
        return java.sql.Date.valueOf(dateStr);
    }


你可能感兴趣的:(java.sql.Date,java.utile.Date)