之前發現自己開發的測試平台中,總是在亂發郵件。明明不應該發的郵件,怎么又在發。
后來才發現,我自己記錄時間類型的時候,記錄錯了
24小時制要用大寫的HH 比如
SimpleDateFormat dtf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss@SSS");
而我用了小寫的hh的格式~~~
還有時間存入DB中,是直接使用數據庫中的函數,比如在SQl中鎖定函數
mysql中,insert tablename () values (now())
sqlserver中, insert tablename () values (getdate())
還是自己定義一個時間string類型的參數,比如creationdt,然后給它一個默認的格式,insert tablename() values (creationdt)
如果只是一個數據庫交互,后期不更改使用的數據庫,用數據庫中的函數也是可以的,還可以減少開發和測試的工作量
如果一個產品,既要在mysql上可以運行,后期客戶說想遷移到sqlserver數據庫,也要可以執行,那就是要定義一下,不然換數據庫中自然會報錯
import org.junit.Test;
import java.text.SimpleDateFormat;
import java.util.Date;
public class EposReceiveApplicationTests {
@Test
public void TestDate() throws Exception {
Date dt= new Date();
long s=System.currentTimeMillis();
System.out.println(s);
long long1= 1559197504587L;
SimpleDateFormat dtf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat dtf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss@SSS");
SimpleDateFormat dtf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss@SSS");
String sdate =dtf1.format(long1);
System.out.println(sdate);
System.out.println(dtf.format(dt));
System.out.println(dtf1.format(dt));
System.out.println(dtf1.format(dt).toString());
System.out.println(dtf2.format(dt));
System.out.println(dtf2.format(dt).toString());
// Date -> String
Date date = new Date(System.currentTimeMillis());
System.out.println(dtf.format(date));
// String -> Date
String timeString = "2019-05-30 14:25:15";
Date newDate = dtf.parse(timeString);
System.out.println(newDate);
}
}
import org.junit.Test; import java.text.SimpleDateFormat; import java.util.Date; public class EposReceiveApplicationTests { @Test public void TestDate() throws Exception { Date dt= new Date(); long s=System.currentTimeMillis(); System.out.println(s); long long1= 1559197504587L; SimpleDateFormat dtf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat dtf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss@SSS"); SimpleDateFormat dtf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss@SSS"); String sdate =dtf1.format(long1); System.out.println(sdate); System.out.println(dtf.format(dt)); System.out.println(dtf1.format(dt)); System.out.println(dtf1.format(dt).toString()); System.out.println(dtf2.format(dt)); System.out.println(dtf2.format(dt).toString()); // Date -> String Date date = new Date(System.currentTimeMillis()); System.out.println(dtf.format(date)); // String -> Date String timeString = "2019-05-30 14:25:15"; Date newDate = dtf.parse(timeString); System.out.println(newDate); } }