java程序中的时间类型有java.util.Date和java.sql.Date两种。二者之间的关系和转化以下:
java
java.sql.Date是java.util.Date的子类,因此能够直接将java.sql.Date类型的对象赋值给java.util.Date对象;然而要经过java.utile.Date对象获取java.sql.Date对象就须要使用如下方法:sql
java.util.Date date = new java.utile.Date(); java.sql.Date sqlDate = new java.sql.Date(date.getTime());
在java程序中字符串和时间的转换也是很常见的,因此将字符串和时间转换的方法总结以下:ide
将时间类型转换为字符串:spa
/** * 获取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); }
将字符串转换为时间:,orm
//把符合时间类型的字符串转换成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); }