java的Timestamp和date与string的转换

一、通配符泛型获取要任意类型

	public static Date parse(String dateStr, String pattern, Class<?> resultClass) {
		if (dateStr == null)
			throw new IllegalArgumentException("dateStr is null");
		if (pattern == null) {
			throw new IllegalArgumentException("pattern is null");
		} else {
			SimpleDateFormat formatter = new SimpleDateFormat(pattern);
			Date date;
			try {
				date = formatter.parse(dateStr);
			} catch (Exception e) {
				throw new RuntimeException(e);
			}
			if (resultClass == null)
				return date;
			else if (resultClass.equals(java.sql.Date.class)) {
				return new java.sql.Date(date.getTime());
			} else if (resultClass.equals(java.sql.Timestamp.class)) {
				return new java.sql.Timestamp(date.getTime());
			} else {
				throw new IllegalArgumentException(
					"result class must be java.sql.Date or java.sql.Timestamp");
			}
		}
	}

二、将java.util.Date对象转化为String字符串

 /**
* @param date
*            要格式的java.util.Date对象
* @param strFormat
*            输出的String字符串格式的限定(如:"yyyy-MM-dd HH:mm:ss")
* @return 表示日期的字符串
*/
public static String dateToStr(java.util.Date date, String strFormat) {
    SimpleDateFormat sf = new SimpleDateFormat(strFormat);
    String str = sf.format(date);
    return str;
}

三、将String字符串转换为java.util.Date格式日期

 /**
  * @param strDate
  *            表示日期的字符串
  * @param dateFormat
  *            传入字符串的日期表示格式(如:"yyyy-MM-dd HH:mm:ss")
  * @return java.util.Date类型日期对象(如果转换失败则返回null)
  */
  public static java.util.Date strToUtilDate(String strDate, String dateFormat) {
     SimpleDateFormat sf = new SimpleDateFormat(dateFormat);
     java.util.Date date = null;
     try {
         date = sf.parse(strDate);
     } catch (ParseException e) {
         e.printStackTrace();
     }
     return date;
}

四、将java.sql.Timestamp对象转化为String字符串

 /**
  * @param time
  *            要格式的java.sql.Timestamp对象
  * @param strFormat
  *            输出的String字符串格式的限定(如:"yyyy-MM-dd HH:mm:ss")
  * @return 表示日期的字符串
  */
 public static String dateToStr(java.sql.Timestamp time, String strFormat) {
     DateFormat df = new SimpleDateFormat(strFormat);
     String str = df.format(time);
     return str;
}

五、将String字符串转换为java.sql.Timestamp格式日期,用于数据库保存

 /**
 * @param strDate
 *            表示日期的字符串
 * @param dateFormat
 *            传入字符串的日期表示格式(如:"yyyy-MM-dd HH:mm:ss")
 * @return java.sql.Timestamp类型日期对象(如果转换失败则返回null)
 */
public static java.sql.Timestamp strToSqlDate(String strDate, String dateFormat) {
    SimpleDateFormat sf = new SimpleDateFormat(dateFormat);
    java.util.Date date = null;
    try {
            date = sf.parse(strDate);
    } catch (ParseException e) {
            e.printStackTrace();
    }
    java.sql.Timestamp dateSQL = new java.sql.Timestamp(date.getTime());
    return dateSQL;
}

六、将java.util.Date对象转化为java.sql.Timestamp对象

 /**
  * @param date
  *            要转化的java.util.Date对象
  * @return 转化后的java.sql.Timestamp对象
  */
public static java.sql.Timestamp dateToTime(java.util.Date date) {
     String strDate = dateToStr(date, "yyyy-MM-dd HH:mm:ss SSS");
     return strToSqlDate(strDate, "yyyy-MM-dd HH:mm:ss SSS");
}

七、将java.sql.Timestamp对象转化为java.util.Date对象

/**
  * 
  * @param time
  *            要转化的java.sql.Timestamp对象
  * @return 转化后的java.util.Date对象
  */
 public static java.util.Date timeToDate(java.sql.Timestamp time) {
     return time;
}

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/82929795