Java中时间处理SimpleDateFormat中HH和hh的区别
之前发现⾃⼰开发的测试平台中,总是在乱发邮件。明明不应该发的邮件,怎么⼜在发。
后来才发现,我⾃⼰记录时间类型的时候,记录错了
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;
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;
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));
java连接sqlserver数据库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);
}
}